2025年事業(yè)單位招聘考試綜合類專業(yè)能力測試試卷(計算機類)計算機編程題_第1頁
2025年事業(yè)單位招聘考試綜合類專業(yè)能力測試試卷(計算機類)計算機編程題_第2頁
2025年事業(yè)單位招聘考試綜合類專業(yè)能力測試試卷(計算機類)計算機編程題_第3頁
2025年事業(yè)單位招聘考試綜合類專業(yè)能力測試試卷(計算機類)計算機編程題_第4頁
2025年事業(yè)單位招聘考試綜合類專業(yè)能力測試試卷(計算機類)計算機編程題_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

2025年事業(yè)單位招聘考試綜合類專業(yè)能力測試試卷(計算機類)計算機編程題考試時間:______分鐘總分:______分姓名:______第一題編寫一個函數(shù),接收一個正整數(shù)n作為參數(shù),返回一個列表,該列表包含從1到n的所有奇數(shù)。如果輸入不是正整數(shù),函數(shù)應返回None。第二題給定一個字符串s,其中只包含字母和數(shù)字,編寫代碼將其中的所有字母轉(zhuǎn)換為大寫,所有數(shù)字保持不變。例如,輸入"aBcD123"應返回"ABCD123"。第三題定義一個類`Point`,用于表示二維平面上的點。該類應包含兩個屬性:`x`和`y`,分別表示點的橫縱坐標。同時,為該類添加一個方法`distance_to_origin`,用于計算并返回該點到原點(0,0)的距離。距離公式為sqrt(x^2+y^2)。第四題使用棧的數(shù)據(jù)結構,實現(xiàn)一個函數(shù)`is_balanced`,判斷一個只包含'('、')'、'{'、'}'、'['、']'的字符串是否是平衡的。一個字符串是平衡的,當且僅當所有開括號都有相應的閉括號,并且括號的嵌套是合法的。例如,"()"、"()[]{}"、"([)]"都不是平衡的,而"(())"、"()[]{}"、"([{}])"是平衡的。第五題實現(xiàn)一個簡單的文本文件讀取和統(tǒng)計功能。編寫代碼打開一個名為"input.txt"的文件(假設該文件已存在于當前目錄下),讀取其全部內(nèi)容,并統(tǒng)計其中單詞的數(shù)量。假設單詞是由空格、標點符號(如逗號、句號等)分隔的非空字符串。最后,將統(tǒng)計到的單詞數(shù)量打印輸出。第六題編寫一個函數(shù)`find_max_subarray_sum`,使用動態(tài)規(guī)劃的方法解決這個問題。該函數(shù)接收一個整數(shù)列表nums作為參數(shù),返回該列表中連續(xù)子數(shù)組的最大和。例如,輸入[-2,1,-3,4,-1,2,1,-5,4]應返回6,因為子數(shù)組[4,-1,2,1]的和最大,為6。第七題定義一個函數(shù)`remove_duplicates`,接收一個列表`lst`作為參數(shù),返回一個新列表,其中包含`lst`中的所有唯一元素,保持它們在原列表中的出現(xiàn)順序。例如,輸入[1,2,2,3,4,4,4,5]應返回[1,2,3,4,5]。第八題假設有一個列表`fruits`包含以下元素:["apple","banana","orange","grape","apple","banana","kiwi","orange","apple"]。使用列表推導式和集合,找出列表中出現(xiàn)過至少三次的水果名稱。試卷答案第一題```pythondefodd_numbers(n):ifnotisinstance(n,int)orn<=0:returnNonereturn[iforiinrange(1,n+1)ifi%2!=0]```解析:首先檢查輸入n是否為正整數(shù),如果不是則返回None。然后使用列表推導式,通過range(1,n+1)生成從1到n的整數(shù)序列,并使用ifi%2!=0篩選出奇數(shù)。第二題```pythondeftransform_string(s):ifnotisinstance(s,str):returnNoneresult=[]forcharins:ifchar.isalpha():result.append(char.upper())elifchar.isdigit():result.append(char)else:result.append(char)return''.join(result)```解析:首先檢查輸入s是否為字符串。然后遍歷字符串中的每個字符,使用isalpha()判斷是否為字母,如果是則使用upper()轉(zhuǎn)換為大寫并加入結果列表。使用isdigit()判斷是否為數(shù)字,如果是則直接加入結果列表。其他字符保持不變。最后使用join()將列表中的字符連接成字符串返回。第三題```pythonimportmathclassPoint:def__init__(self,x,y):self.x=xself.y=ydefdistance_to_origin(self):returnmath.sqrt(self.x2+self.y2)```解析:定義一個名為Point的類,包含__init__初始化方法和distance_to_origin方法。__init__方法接收x和y坐標作為參數(shù),并賦值給實例屬性。distance_to_origin方法使用math.sqrt()計算x和y的平方和的平方根,即點到原點的距離。第四題```pythondefis_balanced(s):stack=[]matching_bracket={')':'(','}':'{',']':'['}forcharins:ifcharinmatching_bracket.values():stack.append(char)elifcharinmatching_bracket:ifnotstackorstack.pop()!=matching_bracket[char]:returnFalsereturnnotstack```解析:使用棧來處理括號。遍歷字符串中的每個字符,如果是開括號('(','{','[')則入棧。如果是閉括號(')','}',']'),則檢查棧是否為空或棧頂元素是否與當前閉括號匹配。如果不匹配,返回False。遍歷結束后,如果棧為空,則表示括號平衡,否則不平衡。第五題```pythondefcount_words():try:withopen("input.txt","r")asfile:content=file.read()words=content.split()print(len(words))exceptFileNotFoundError:print("Filenotfound")```解析:使用withopen語句嘗試打開"input.txt"文件。使用read()讀取文件全部內(nèi)容。使用split()方法按空白字符分割內(nèi)容得到單詞列表。使用len()統(tǒng)計單詞數(shù)量并打印。使用try-except處理文件不存在的異常情況。第六題```pythondeffind_max_subarray_sum(nums):ifnotnums:return0max_sum=current_sum=nums[0]fornuminnums[1:]:current_sum=max(num,current_sum+num)max_sum=max(max_sum,current_sum)returnmax_sum```解析:使用動態(tài)規(guī)劃方法。初始化max_sum和current_sum為第一個元素。遍歷列表中的每個元素(從第二個開始),更新current_sum為當前元素和current_sum+當前元素的較大值。同時更新max_sum為max_sum和current_sum的較大值。最終max_sum即為最大子數(shù)組和。第七題```pythondefremove_duplicates(lst):seen=set()result=[]foriteminlst:ifitemnotinseen:seen.add(item)result.append(item)returnresult```解析:使用set作為seen集合記錄已出現(xiàn)過的元素。使用result列表存儲結果。遍歷輸入列表,如果當前元素不在seen中,則將其加入seen和result。這樣保持遍歷順序的同時,只添加了第一次出現(xiàn)的元素。第八題```pythonfruits=["apple","banana","orange","grape","apple","banana","kiwi","orange","apple"]unique_fruits=set(fruits)result=[fruitforfruitinunique_

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論