阿里巴巴2018校園招聘筆試試題-軟件研發(fā)工程師+答案_第1頁
阿里巴巴2018校園招聘筆試試題-軟件研發(fā)工程師+答案_第2頁
阿里巴巴2018校園招聘筆試試題-軟件研發(fā)工程師+答案_第3頁
阿里巴巴2018校園招聘筆試試題-軟件研發(fā)工程師+答案_第4頁
阿里巴巴2018校園招聘筆試試題-軟件研發(fā)工程師+答案_第5頁
免費預(yù)覽已結(jié)束,剩余6頁可下載查看

下載本文檔

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

文檔簡介

1、阿里巴巴2018秋季校園招聘-軟件研發(fā)工程師筆試題1.單選題1.假設(shè)把整數(shù)關(guān)鍵碼K散列到N個槽列表,以下哪些散列函數(shù)是好的散 列函數(shù)A: h(K)=K/N;B: h(K)=1;C: h(K)=K mod N;D: h(K)=(K+rand(N) mod N, rand(N)返回0到N-1的整數(shù)答案:D2.下面排序算法中,初始數(shù)據(jù)集的排列順序?qū)λ惴ǖ男阅軣o影響的是:A:堆排序B:插入排序C:冒泡排序D:快速排序答案:A(插入排序:最優(yōu)時間復(fù)雜度0( n)最差時間復(fù)雜度05八2)平 均時間復(fù)雜度O(nA2)冒泡排序:最優(yōu)時間復(fù)雜度O(n)最差時間復(fù)雜度O(nA2)平均時間復(fù)雜度O(nA2)快速排序

2、: 最優(yōu)時間復(fù)雜度O(nlogn)最差時間復(fù)雜 度O(nA2)平均時間復(fù)雜度O(nlogn)堆排序:最優(yōu)時間復(fù)雜度O(nlogn)最差時間復(fù)雜度O(nlogn)平均時間復(fù)雜度O(nlogn)3.下面說法錯誤的是:A: CISC計算機比RISC計算機指令多B:在指令格式中,采用擴展操作碼設(shè)計方案的目的是為了保持指令字長不變而增加尋址空間C:增加流水線段數(shù)理論上可以提高CPU頻率8:答案:B4.不屬于馮諾依曼體系結(jié)構(gòu)必要組成部分是:A:CPU B: Cache C:RAM D:ROM答案:B5.一個棧的入棧序列式ABCD則不可能的出棧序列是:A:DECBA B:DCEBA C:ECDBA D:AB

3、CDE答案:C6.你認為可以完成編寫一個C語言編譯器的語言是:A:匯編B:C語言C:VB D:以上全可以答案:D7.關(guān)于C+/JAVA類中的static成員和對象成員的說法正確的是:A: static成員變量在對象構(gòu)造時候生成B: static成員函數(shù)在對象成員函數(shù)中無法調(diào)用C:虛成員函數(shù)不可能是static成員函數(shù)D:馮諾依曼體系結(jié)構(gòu)的主要特征是存儲程序的工作方式8:D: static成員函數(shù)不能訪問static成員變量答案:AA: 0(1) B:O( n) C:O(N*N) D:O( n!)答案:C9:某進程在運行過程中需要等待從磁盤上讀入數(shù)據(jù),此時進程的狀態(tài)將:A:從就緒變?yōu)檫\行B:從運

4、行變?yōu)榫途wC:從運行變?yōu)樽枞鸇:從阻塞變?yōu)榫途w答案:C10:下面算法的時間復(fù)雜度為:Int f(un sig ned int n)If(n=0| n=1)Return 1;ElseRetur n n*f(n -1);A: 0 B: 1 C:2 D:4答案:B11: n從1開始,每個操作可以選擇對n加1或者對n加倍。若想獲得整 數(shù)2018,最少需要多少個操作。A:18B:24 C:21 D;不可能答案:A,對2018用除法,顯示2018-2018-1006-503-502-251-250-125-124-62-31-30-15 -14-7-6-3-2-1正向只能是+1和X2,所以逆向只能-1和/

5、2,由上過程可得18次12:對于一個具有n個頂點的無向圖,若采用鄰接表數(shù)據(jù)結(jié)構(gòu)表示,則 存放表頭節(jié)點的數(shù)組大小為:A: n B: n+1 C: n-1 D: n+邊數(shù)答案:A13:13-考慮- 個特殊的 hash 函數(shù) h,能將任一字符串 hash 成一個整數(shù) k.其概;P(k)=2*(-k), k=lt2f對一個未知大小的字符串集舍 S 中的每一個素取 hash 値所組成的集合為 h(S).若 h(S)中最大的元察 max h二那么 S 的大小的期望是_。心1024 Bs 512 C. 5 D. 10答案A對于幾何中的每個字符串取hash可以看作是同分布的獨立重復(fù) 事件, 所以每一個事件出現(xiàn)

6、10的概率都是p=1/1024,那么當(dāng)出現(xiàn)的時候, 期望的次數(shù)就是1/p,1024.14:如下函數(shù),在32bit系統(tǒng)foo(2A31-3)的值是:Int foo(i nt x)Retur n x&-x;答案:BA: 0(n) B:O(d) C:O(log n) D:( nlogn)15:對于順序存儲的線性數(shù)組,訪問節(jié)點和增加節(jié)點刪除節(jié)點的時間復(fù) 雜度為:A: 0( n), 0( n)B:0( n), 0(1) C:0(1),0( n) D:0( n),0( n)答案:C16:在32為系統(tǒng)環(huán)境,編譯選項為4字節(jié)對齊,那么sizeof(A)和sizeof(B)是:Struct AInt a

7、;short b;int c;char d;Struct Bint a;short b;char c;int c;A: 16,16B:13,12 C:16,12D:11,16答案:C17:袋中有紅球,黃球,白球各一個,每次任意取一個放回,如此連續(xù)3次,則下列事件中概率是8/9的是:A:顏色不全相同B:顏色全不相同C:顏色全相同D:顏色無紅色答案:A18: 一個洗牌程序的功能是將n張牌的順序打亂,以下關(guān)于洗牌程序的 功能定義說法最恰當(dāng)?shù)氖牵篈:每張牌出現(xiàn)在n個位置上的概率相等B:每張牌出現(xiàn)在n個位置上的概率獨立C:任何連續(xù)位置上的兩張牌的內(nèi)容獨立D: n張牌的任何兩個不同排列出現(xiàn)的概率相等答案:

8、A19:用兩種顏色去染排成一個圈的6個棋子,如果通過旋轉(zhuǎn)得到則只算一 種,一共有多少種染色:A: 10 B:11 C:14: D:15答案:C解釋:應(yīng)該有14種方案,設(shè)只有黑白兩色,默認白色,那么,用p(n)表示有n個黑棋的種類p(0)=p(6)=1p(1)=p(5)=1p(2)=p(4)=3 /相鄰的一種,隔一個的一種,兩個的一種p(3)=4 /都相鄰的一種,BBOB的一種,BBOOB的一種,BOBOB的一種, 一共4種綜上是14種2O:遞歸式的先序遍歷一個n節(jié)點,深度為d的二叉樹,則需要??臻g 的大小為:答案:B第二部分:多選21:兩個線程運行在雙核機器上,每個線程主線程如下,線程1:x=

9、1;r1=y;線程2:y=1;r2=x;X和y是全局變量,初始為0。以下哪一個是r1和r2的可能值:A: r1=1,r2=1B: r1=1,r2=0A: 0(n) B:O(d) C:O(log n) D:( nlogn)C:r1=0,r2=0D:r1=0,r2=1答案:ABD22.關(guān)于Linux系統(tǒng)的負載,以下表述正確的是:A:通過就緒和運行的進程數(shù)來反映B:通過TOP命令查看C:通過uptime查看D: Load:2.5,1.3,1.1表示系統(tǒng)的負載壓力在逐漸變小答案:BC(對于A不確定)23:關(guān)于排序算法的以下說法,錯誤的是:A:快速排序的平均時間復(fù)雜度O(nlogn),最壞0(N9)B:

10、堆排序平均時間復(fù)雜度0(nlogn),最壞O(nlogn)C:冒泡排序平均時間復(fù)雜度0(nT),最壞0(nT)D:歸并排序的平均時間復(fù)雜度0(nlogn),最壞0(nA2)答案:D解釋:歸并排序的平均時間復(fù)雜度0(nlogn),最壞0(nlogn)24:假設(shè)函數(shù)rand_k會隨機返回一個【1,k】之間的隨機數(shù)(k=2),并且每個證書出現(xiàn)的概率相等。目前有rand_7,通過調(diào)用rand_7()和 四則運算符,并適當(dāng)增加邏輯判斷和循環(huán)控制邏輯,下列函數(shù)可以實現(xiàn)的有:A:ra nd_3 B:ra nd_21 C:ra nd_23 D:ra nd_49答案:ABCD解釋:對于rand_x(x7)的直接

11、截斷,只要rand數(shù)大于x直接忽略, 保證rand_x能夠做到概率相等。而對于其他的則采用7Xrand_7+rand_7,可以-7得到rand_49,然后截斷成rand_42,統(tǒng)一除 以2,則是rand_21,其他類似。阿里巴巴2018秋季校園招聘-軟件研發(fā)工程師筆試題 續(xù)2018-09-21 23:32368人閱讀評論(0)收藏舉報 校園招聘百度阿里巴巴軟件研發(fā)算法第三部分25、某二叉樹的前序遍歷序列為-+a*b-cd/ef,后序遍歷序列為abcd-*+ef/-,問其中序遍歷序列是-。答案:a+b*c-d-e/f26、某緩存系統(tǒng)采用LRU淘汰算法,假定緩存容量為4,并且初始為空, 那么在順序

12、訪問以下數(shù)據(jù)項的時候1,5,132,4,1,2出現(xiàn)緩存命中的次 數(shù)是一一。最后緩存中即將準(zhǔn)備淘汰的數(shù)據(jù)項是一一。答案:3,3解釋:(LRU是Least Recently Used近期最少使用算法。)1-1,5-5,1 -5,1,3-5,1,3,2-1,3,2,4-3,2,4,1-3,4,1,2-首先1調(diào)入內(nèi)存,然后5調(diào)入內(nèi)存,然后1調(diào)入內(nèi)存(命中緩存),然后3調(diào)入內(nèi)存,然后2調(diào)入內(nèi)存,然后4調(diào)入內(nèi)存(將最少使用的5置換出內(nèi)存), 然后1調(diào)入內(nèi)存(命中緩存),然后2調(diào)入內(nèi)存(命中緩存)。最后,最少 使用的3將面臨被置換出的危險。27、 兩個較長的單向鏈表a和b,為了找出及誒單noed滿足node

13、 in a并且node in b。請設(shè)計空間使用盡量小的算法(用c/c+,java或者 偽代碼)html view plaincopyprint?struct node:3in tv;4node *n ext;、;/*返回鏈表的長度n ext;i玉return num;工如果找到了 則返回指針 指向公共節(jié)點二/如果不存在 則返回空指針node * fin dFirstComme nN ode( node * pheada, node * pheadb)24size_t lenA = listLe n( pheada)25size_t lenB = listLe n( pheadb)2627no

14、de * plistA = pheada;28node * plistB = pheadb;29/調(diào)整長度30/plistA指向較長的一個31if (lenA lenB)4041plistA = plistA- n ext;42-le nA;4344/一樣長了45/尋找公共節(jié)點while (plistA!=NULL & plistA != plistB) 驅(qū)plistA = plistA- n ext;鼻:plistB = plistB- next;“ .?:i return plistA;P算法的空間復(fù)雜度0(1),時間復(fù)雜度0(m+n)o28、 當(dāng)存儲數(shù)據(jù)量超出單節(jié)點數(shù)據(jù)管理能力的時候,可以采用的辦法有 數(shù)據(jù)庫sharding的解決方案,也就是按照一定的規(guī)律把數(shù)據(jù)分散存儲在 多個數(shù)據(jù)管理節(jié)點N中(節(jié)點編號為0,1,2 , N-1)。 假設(shè)存儲的數(shù)據(jù)時a請完成為數(shù)據(jù)a計算存儲節(jié)點的程序。html view plaincopyprint? #defi ne N 5int hash(in

溫馨提示

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

評論

0/150

提交評論