版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2025年成章編程考試題及答案一、單項(xiàng)選擇題(每題2分,共20分)1.以下關(guān)于Python提供器(Generator)的描述,錯(cuò)誤的是:A.提供器使用yield語句返回值B.提供器在迭代過程中會(huì)保存當(dāng)前狀態(tài)C.提供器表達(dá)式(genexpr)使用圓括號包裹D.提供器對象的__next__()方法會(huì)一次性提供所有值答案:D解析:提供器通過__next__()方法逐次提供值,遇到y(tǒng)ield暫停,不會(huì)一次性提供所有值。2.在Java中,以下代碼的輸出結(jié)果是:```javapublicclassTest{publicstaticvoidmain(String[]args){int[]arr={1,2,3,4,5};for(inti=0;i<arr.length;i++){if(i%2==0){continue;}System.out.print(arr[i]+"");}}}```A.135B.24C.12345D.2345答案:B解析:當(dāng)i為0、2、4時(shí)觸發(fā)continue,跳過輸出;i=1時(shí)輸出2,i=3時(shí)輸出4。3.對于C++中的指針操作,以下代碼執(zhí)行后,變量b的值是:```cppinta=10;intp=&a;intb=p+5;```A.10B.15C.5D.編譯錯(cuò)誤答案:B解析:p解引用得到a的值10,加5后b=15。4.以下哪種數(shù)據(jù)結(jié)構(gòu)最適合實(shí)現(xiàn)“最近最少使用(LRU)”緩存?A.哈希表+雙向鏈表B.二叉搜索樹C.隊(duì)列D.棧答案:A解析:哈希表用于快速查找,雙向鏈表維護(hù)訪問順序,刪除最久未使用的節(jié)點(diǎn)。5.若完全二叉樹有768個(gè)節(jié)點(diǎn),則該樹的深度為(根節(jié)點(diǎn)深度為1):A.9B.10C.11D.12答案:B解析:2^9-1=511<768≤2^10-1=1023,故深度為10。6.以下Python代碼的時(shí)間復(fù)雜度是:```pythondeffunc(n):count=0foriinrange(n):forjinrange(i,n):count+=1returncount```A.O(n)B.O(n2)C.O(nlogn)D.O(1)答案:B解析:外層循環(huán)n次,內(nèi)層循環(huán)n-i次,總次數(shù)為n+(n-1)+…+1=n(n+1)/2,時(shí)間復(fù)雜度O(n2)。7.在SQL中,要查詢“學(xué)生表”中年齡大于20歲且性別為“女”的學(xué)生,正確的WHERE子句是:A.WHERE年齡>20AND性別=女B.WHERE年齡>20OR性別='女'C.WHERE年齡>20AND性別='女'D.WHERE年齡>20&性別='女'答案:C解析:字符串值需用單引號包裹,邏輯與用AND。8.以下關(guān)于HTTP狀態(tài)碼的描述,錯(cuò)誤的是:A.200表示請求成功B.404表示服務(wù)器內(nèi)部錯(cuò)誤C.500表示服務(wù)器端錯(cuò)誤D.301表示永久重定向答案:B解析:404表示資源未找到,500是服務(wù)器內(nèi)部錯(cuò)誤。9.用動(dòng)態(tài)規(guī)劃解決背包問題時(shí),狀態(tài)轉(zhuǎn)移方程通常表示為:A.dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i])B.dp[i][j]=min(dp[i-1][j],dp[i-1][j-w[i]]+v[i])C.dp[i][j]=dp[i-1][j]+dp[i][j-1]D.dp[i][j]=dp[i-1][j-w[i]]+v[i]答案:A解析:0-1背包問題中,對于第i個(gè)物品,選或不選的最大值。10.以下關(guān)于Python類的繼承,說法正確的是:A.子類無法重寫父類的私有方法(以__開頭)B.多繼承時(shí),所有父類的方法都會(huì)被優(yōu)先調(diào)用C.子類構(gòu)造方法中必須顯式調(diào)用父類構(gòu)造方法D.類屬性可以通過實(shí)例對象修改答案:A解析:Python中私有方法(__method)通過名稱修飾實(shí)現(xiàn),子類無法直接訪問或重寫;B錯(cuò)誤,多繼承遵循MRO順序;C錯(cuò)誤,若子類未定義構(gòu)造方法,會(huì)自動(dòng)調(diào)用父類;D錯(cuò)誤,實(shí)例對象修改類屬性會(huì)創(chuàng)建實(shí)例屬性,不影響類屬性。二、填空題(每空2分,共20分)1.在Python中,使用`re`模塊匹配字符串時(shí),`re.S`標(biāo)志位的作用是使`.`匹配包括______在內(nèi)的所有字符。答案:換行符2.若有一個(gè)長度為n的有序數(shù)組,使用二分查找的時(shí)間復(fù)雜度為______。答案:O(logn)3.Java中,`final`修飾的類不能被______,`final`修飾的方法不能被______。答案:繼承;重寫4.數(shù)據(jù)庫事務(wù)的四大特性(ACID)是原子性、一致性、隔離性和______。答案:持久性5.快速排序的平均時(shí)間復(fù)雜度是______,最壞時(shí)間復(fù)雜度是______。答案:O(nlogn);O(n2)6.Python中,列表`a=[1,2,3]`,執(zhí)行`a.append([4,5])`后,`a`的內(nèi)容為______;執(zhí)行`a.extend([4,5])`后,`a`的內(nèi)容為______。答案:[1,2,3,[4,5]];[1,2,3,4,5]三、程序分析題(每題10分,共20分)1.分析以下Python代碼的輸出結(jié)果,并說明原因。```pythondefouter():x=1definner():nonlocalxx=x+2returnxreturninnerf=outer()print(f())print(f())```答案:輸出結(jié)果:3;5原因:`outer()`返回閉包`inner`,`nonlocal`聲明`x`為外層函數(shù)的變量。第一次調(diào)用`f()`時(shí),x=1+2=3;第二次調(diào)用時(shí),x保留上次修改后的值3,再加2得5。2.閱讀以下C++代碼,寫出程序的輸出結(jié)果。```cppinclude<iostream>usingnamespacestd;classA{public:A(){cout<<"A構(gòu)造";}~A(){cout<<"A析構(gòu)";}};classB:publicA{public:B(){cout<<"B構(gòu)造";}~B(){cout<<"B析構(gòu)";}};intmain(){Bb;return0;}```答案:輸出:A構(gòu)造B構(gòu)造B析構(gòu)A析構(gòu)原因:創(chuàng)建子類對象時(shí),先調(diào)用父類構(gòu)造函數(shù),再調(diào)用子類構(gòu)造函數(shù);銷毀時(shí),先調(diào)用子類析構(gòu)函數(shù),再調(diào)用父類析構(gòu)函數(shù)。四、編程題(共40分)1.(10分)編寫一個(gè)Python函數(shù)`count_vowels(s)`,統(tǒng)計(jì)字符串`s`中元音字母(a、e、i、o、u,不區(qū)分大小寫)的個(gè)數(shù)。要求:忽略非字母字符,大小寫不敏感。示例:輸入:"Hello,World!123"輸出:3('e','o','o')答案:```pythondefcount_vowels(s):vowels={'a','e','i','o','u'}count=0forcharins.lower():轉(zhuǎn)換為小寫統(tǒng)一處理ifchar.isalpha()andcharinvowels:count+=1returncount```2.(15分)給定一個(gè)整數(shù)數(shù)組`nums`和一個(gè)整數(shù)`k`,找出數(shù)組中和為`k`的連續(xù)子數(shù)組的個(gè)數(shù)。要求時(shí)間復(fù)雜度不超過O(n)。示例:輸入:nums=[1,1,1],k=2輸出:2([1,1]出現(xiàn)兩次)答案:```pythondefsubarray_sum(nums,k):fromcollectionsimportdefaultdictprefix_sum=0count=0sum_map=defaultdict(int)sum_map[0]=1初始前綴和為0的情況fornuminnums:prefix_sum+=num當(dāng)前前綴和目標(biāo)k=之前需要存在的前綴和ifprefix_sumkinsum_map:count+=sum_map[prefix_sumk]sum_map[prefix_sum]+=1更新前綴和出現(xiàn)次數(shù)returncount```解析:使用前綴和+哈希表優(yōu)化。`sum_map`記錄前綴和出現(xiàn)的次數(shù),當(dāng)前綴和為`prefix_sum`時(shí),若存在`prefix_sumk`的前綴和,則中間的子數(shù)組和為k。3.(15分)設(shè)計(jì)一個(gè)算法,將二叉樹轉(zhuǎn)換為鏡像二叉樹(左右子樹交換)。要求使用遞歸和迭代兩種方法實(shí)現(xiàn)(任選一種語言)。示例:輸入:```4/\27/\/\1369```輸出:```4/\72/\/\9631```答案(Python遞歸實(shí)現(xiàn)):```pythonclassTreeNode:def__init__(self,val=0,left=None,right=None):self.val=valself.left=leftself.right=rightdefmirror_tree(root):ifnotroot:returnNone交換左右子樹root.left,root.right=root.right,root.left遞歸處理左右子樹mirror_tree(root.left)mirror_tree(root.right)returnroot```答案(Java迭代實(shí)現(xiàn)):```javaimportjava.util.LinkedList;importjava.util.Queue;classTreeNode{intval;TreeNodeleft;TreeNoderight;TreeNode(intx){val=x;}}publicclassSolution{publicTreeNodemirrorTree(TreeNoderoot){if(root==null)returnnull;Queue<TreeNode>queue=newLinkedList<>();queue.add(root);while(!queue.isEmpty()){TreeNodenode=queue.poll();//交換左右子節(jié)點(diǎn)TreeNodetemp=node.left;node.left=node.right;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家長進(jìn)課堂防疫知識(shí)課件
- 2026年農(nóng)村土地租賃服務(wù)合同協(xié)議
- 2026年合同違約汽車租賃合同協(xié)議
- 2026年荒山承包治理合同
- 空運(yùn)代理合同2026年付款方式協(xié)議
- 2026年電子產(chǎn)品租賃典當(dāng)合同
- 2026年投資合作框架合同協(xié)議書
- 智能手術(shù)機(jī)器人使用合同協(xié)議2026
- 2026年應(yīng)急供電維修合同協(xié)議
- 車輛保險(xiǎn)合同2026年保險(xiǎn)變更協(xié)議
- 2025年國資委主任年終述職報(bào)告
- 日本所有番號分類
- 2024年江蘇省普通高中學(xué)業(yè)水平測試小高考生物、地理、歷史、政治試卷及答案(綜合版)
- GB/T 43327.6-2023石油天然氣工業(yè)海洋結(jié)構(gòu)物特殊要求第6部分:海上作業(yè)
- 土力學(xué)與地基基礎(chǔ)(課件)
- 精神分裂癥等精神病性障礙臨床路徑表單
- 自考《社區(qū)規(guī)劃00291》復(fù)習(xí)必備題庫(含答案)
- 傳感器技術(shù)與應(yīng)用教案
- 管道安全檢查表
- 電纜井砌筑工序報(bào)驗(yàn)單檢驗(yàn)批
- GA/T 850-2009城市道路路內(nèi)停車泊位設(shè)置規(guī)范
評論
0/150
提交評論