一,不定項選擇題(共25題,每題4分,共100分,少選、錯選、多選不得分)前端
1. 已知一棵二叉樹,若是先序遍歷的節點順序是:ADCEFGHB,中序遍歷是:CDFEGHAB,則後序遍歷的結果是:( )。node
A CFHGEBDA B CDFEGHBA C FGHCDEBA D CFHGEDBA算法
2. 下列哪兩個數據結構,同時具備較高的查找和刪除性能:( )。設計模式
A 有序數組 B 有序鏈表 C AVL樹 D Hash表數組
3. 下列排序算法中,哪些的時間複雜度不會超過 nlogn ( )。瀏覽器
A 快速排序 B 堆排序 C 歸併排序 D 冒泡排序服務器
4. 初始順序爲: 一、八、六、二、五、四、七、3一組數採用堆排序,當建堆(小根堆)完畢時,堆所對應的二叉樹中序遍歷結果爲 ( )。網絡
A 八、三、二、五、一、六、四、7數據結構
B 三、二、八、五、一、四、六、7函數
C 三、八、二、五、一、六、七、4
D 八、二、三、五、一、四、七、6
5. 當n=5時,下列函數的返回值是:( )。
1 int foo(int n) 2 { 3 if(n<=2) 4 return n; 5 return foo(n-1)+f(n-2); 6 }
A 5 B 7 C 8 D 10
6. S市A、B共有兩個區,人口比例爲3:5,據歷史統計A區的犯罪率爲0.01%,B區爲0.015%,如今有一塊兒新案件發生在S市,那麼案件發生在A區的可能性有多大:( )。
A 37.5% B 32.2% C 28.6% D 26.1%
7. Unix系統中,下列哪些能夠用於進程間的通信:( )
A Socket B 共享內存 C 消息隊列 D 信號量
8. 靜態變量一般存儲在進程中哪一區:( )
A 棧區 B 堆區 C 全局區 D 代碼區
9. 查詢性能 ( )
A 在Name字段上添加主鍵
B 在Name字段上添加索引
C 在Age字段上添加主鍵
D 在Age字段上添加索引
10. IP地址131.153.12.71是一個( )類IP地址。
A A B B C C D D
11. 下推自動機識別的語言是 ( )
A 0型語言 B 1型語言 C 2型語言 D 3型語言
12. 下列程序的輸出是:( )
1 #define add(a,b) a+b 2 int main() 3 { 4 printf("%d\n", 5*add(3,4)); 5 return 0; 6 }
A 23 B 35 C 16 D 19
13. 瀏覽器訪問某頁面,HTTP協議返回狀態碼爲403時表示:( )
A 找不到該頁面 B 禁止訪問
C 內部服務器錯誤 D 服務器繁忙
14. 若是某系統15*4=112成立,則系統採用的是( )進制。
A 6 B 7 C 8 D 9
15. 某段文本中各個字母出現的頻率分別是{a:4, b:3, o:12, h:7, i:10},使用huffman編碼進行編碼,則哪一種是可能的編碼: ( )
A a(000),b(001),h(01),i(10),o(11)
B a(0000),b(0001),h(001),o(01),i(1)
C a(000),b(001),h(01),i(10),o(00)
D a(0000),b(0001),h(001),o(000),i(1)
16. TCP和IP分別對應了OSI中的哪幾層?( )
A Application Layer B Presentation Layer
C Transport Layer D Network Layer
17. 一個棧的入棧順序是A,B,C,D,E,則棧的不可能的輸出序列是?( )
A EDCBA B DECBA C DCEAB D ABCDE
18. 同一進程下的線程能夠共享如下?( )
A stack B data section C register set D file fd
19. 對於派生類的構造函數,在定義對象時構造函數的執行順序爲?( )
1:成員對象的構造函數 2:基類的構造函數 3:派生類自己的構造函數
A 123 B 231 C 321 D 213
20. 如何減小換頁錯誤?( )
A 進程傾向於佔用CPU
B 訪問局部性(locality of reference)知足進程要求
C 進程傾向於佔用I/O
D 使用基於最短剩餘時間(shortest remaining time)的調度機制
21. 遞歸函數最終會結束,那麼這個函數必定:( )
A 使用了局部變量 B 有一個分支不調用自身
C 使用了全局變量或者使用了一個或多個參數 D 沒有循環調用
22. 編譯過程當中,語法分析器的任務是( )
A 分析單詞是怎樣構成的 B 分析單詞串是如何構成語句和說明的
C 分析語句和說明是怎樣構成程序的 D 分析程序的結構
23. 同步機制應遵循哪些基本準則:( )
A 空閒讓進 B 忙則等待 C 有限等待 D 讓權等待
24. 進程進入等待狀態有哪幾種方式?( )
A CPU調度給優先級更高的線程 B 阻塞的線程得到資源或者信號
C 在時間片輪轉的狀況下,若是時間片到了 D 獲取spinlock未果
25. 設計模式中,屬於結構型模式的有哪些?( )
A 狀態模式 B 裝飾模式 C 代理模式 D 觀察者模式
二,填空題(共4題10個空,每一個空2分,共20分)
1. 設有字母序列{Q,D,F,X,A,P,N,B,Y,M,C,W},請寫出按2路歸併排序方法對該序列進行一趟掃描後的結果是( )。
2. 關鍵碼序列(Q,H,C,Y,Q,A,M,S,R,D,F,X),要按照關鍵碼值遞增的次序進行排序,若採用初始步長爲4的Shell排序法,則一趟掃描的結果是( );若採用以第一個元素爲分界元素的快速排序法,則掃描一趟的結果是( )。
3. 二進制地址爲011011110000,大小爲(4)10和(16)10塊的夥伴地址分別爲:( )和( )。
4. 設t是給定的一棵二叉樹,下面的遞歸程序count(t)用於求得:二叉樹t中具備非空的左、右兩個兒子的節點個數N2;只有非空左兒子的個數NL;只有非空右兒子的節點個數NR和葉子節點個數N0.N二、NL、NR、N0都是全局變量,且在調用count(t)以前都置爲0.
1 typedef struct node 2 {int data; struct node *lchild, *rchild;}node; 3 int N2, NL, NR, N0; 4 void count(node *t) 5 {if (t->lchild!=NULL) if _______ N2++; else NL++; 6 else if _______ NR++; else ________; 7 if (t->lchild!=NULL) ________; if (t->rchild!=NULL) ________; 8 }/*call from :if(t!=NULL) count(t);*/
3、Web前端方向簡答題
(略)
4、其餘方向簡答題(共2題,每題20分,選作1題,不計入總分)
1. 請設計一個排隊系統,可以讓每一個進入隊伍的用戶都能看到本身在隊列中所處的位置和變化,隊伍可能隨時有人加入和退出,當有人退出影響到用戶的位置排名時須要即時反饋到用戶。
2. A,B兩個整數集合,設計一個算法求它們的交集,儘量的高效。
個人答案:
選擇題
1. D
2. CD AVL樹和Hash表
3. BC 堆排序和歸併排序
4. A
5. C f(1)=1, f(2)=2, f(3)=3, f(4)=5, f(5)=8
6. C 28.6%
7. ABCD 所有正確
8. C 全局區
9. B
10. B
11. C
12. D 19 define後面的a+b不帶括號~
13. B 禁止訪問
14. A 6進制
15. A
16. CD 網絡層和運輸層
17. C
18. BD
19. D
20. BC
21. B
22. B
23. ABCD 所有正確
24. D
25. BC
填空題
1. DQFXAPBNMYCW
2. QACSQDFXRHMY FHCDQAMQRSYX
3. 011011110100 011011100000 (從網上看來的答案,還沒弄清楚夥伴地址的概念……)
4. 第一個空 (t->rchild!=NULL) 第二個空 (t->rchild!=NULL) 第三個空 N0++ 第四個空 count(t->lchild) 第五個空 count(t->rchild)
其餘方向簡答題
略