考試時(shí)長(zhǎng): 120分鐘
一 不定項(xiàng)選擇題(共25題,每題4分,共100分,少選、錯(cuò)選、多選均不得分)
1 已知一棵二叉樹(shù),如果先序遍歷的節(jié)點(diǎn)順序是:ADCEFGHB,中序遍歷是:CDFEGHAB,則后序遍歷結(jié)果為:(D)
A.CFHGEBDA B.CDFEGHBA C.FGHCDEBA D.CFHGEDBA
2 下列哪兩個(gè)數(shù)據(jù)結(jié)構(gòu),同時(shí)具有較高的查找和刪除性能?(CD)
A.有序數(shù)組 B.有序鏈表 C.AVL樹(shù) D.Hash表
3 下列排序算法中,哪些時(shí)間復(fù)雜度不會(huì)超過(guò)nlogn?(BC)
A.快速排序 B.堆排序 C.歸并排序 D.冒泡排序
4 初始序列為1 8 6 2 5 4 7 3一組數(shù)采用堆排序,當(dāng)建堆(小根堆)完畢時(shí),堆所對(duì)應(yīng)的二叉樹(shù)中序遍歷序列為:(A)
A.8 3 2 5 1 6 4 7
B.3 2 8 5 1 4 6 7
C.3 8 2 5 1 6 7 4
D.8 2 3 5 1 4 7 6
5 當(dāng)n=5時(shí),下列函數(shù)的返回值是:(A)
[cpp] view plaincopy
int foo(int n)
{
if(n<2)return n;
returnfoo(n-1)+foo(n-2);
}
A.5 B.7 C.8 D.10
6 S市A,B共有兩個(gè)區(qū),人口比例為3:5,據(jù)歷史統(tǒng)計(jì)A的犯罪率為0.01%,B區(qū)為0.015%,現(xiàn)有一起新案件發(fā)生在S市,那么案件發(fā)生在A區(qū)的可能性有多大?(C)
A.37.5% B.32.5% C.28.6% D.26.1%
7 Unix系統(tǒng)中,哪些可以用于進(jìn)程間的通信?(BCD)
A.Socket B.共享內(nèi)存 C.消息隊(duì)列 D.信號(hào)量
8 靜態(tài)變量通常存儲(chǔ)在進(jìn)程哪個(gè)區(qū)?(C)
A.棧區(qū) B.堆區(qū) C.全局區(qū) D.代碼區(qū)
9 查詢性能(B)
A. 在Name字段上添加主鍵
B. 在Name字段上添加索引
C. 在Age字段上添加主鍵
D. 在Age字段上添加索引
10 IP地址131.153.12.71是一個(gè)(B)類IP地址。
A.A B.B C.C D.D
11 下推自動(dòng)識(shí)別機(jī)的語(yǔ)言是:(C)
A. 0型語(yǔ)言 B.1型語(yǔ)言 C.2型語(yǔ)言 D.3型語(yǔ)言
12 下列程序的輸出是:(D)
[cpp] view plaincopy
#define add(a+b) a+b
int main()
{
printf(“%d\n”,5*add(3+4));
return 0;
}
A.23 B.35 C.16 D.19
13 瀏覽器訪問(wèn)某頁(yè)面,HTTP協(xié)議返回狀態(tài)碼為403時(shí)表示:(B)
A 找不到該頁(yè)面
B 禁止訪問(wèn)
C 內(nèi)部服務(wù)器訪問(wèn)
D 服務(wù)器繁忙
14 如果某系統(tǒng)15*4=112成立,則系統(tǒng)采用的是(A)進(jìn)制。
A.6 B.7 C.8 D.9
15 某段文本中各個(gè)字母出現(xiàn)的頻率分別是{a:4,b:3,o:12,h:7,i:10},使用哈夫曼編碼,則哪種是可能的編碼:(A)
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分別對(duì)應(yīng)了OSI中的哪幾層?(CD)
A Application layer
B Presentation layer
C Transport layer
D Network layer
17 一個(gè)棧的入棧序列是A,B,C,D,E,則棧的不可能的輸出序列是?(C)
A.EDCBA B.DECBA C.DCEAB D.ABCDE
18 同一進(jìn)程下的線程可以共享以下?(BD)
A. stack B.datasection C.registerset D.file fd
19 對(duì)于派生類的構(gòu)造函數(shù),在定義對(duì)象時(shí)構(gòu)造函數(shù)的執(zhí)行順序?yàn)?(D)
1:成員對(duì)象的構(gòu)造函數(shù)
2:基類的構(gòu)造函數(shù)
3:派生類本身的構(gòu)造函數(shù)
A.123 B.231 C.321 D.213
20 如何減少換頁(yè)錯(cuò)誤?(BC)
A 進(jìn)程傾向于占用CPU
B 訪問(wèn)局部性(localityof reference)滿足進(jìn)程要求
C 進(jìn)程傾向于占用I/O
D 使用基于最短剩余時(shí)間(shortestremaining time)的調(diào)度機(jī)制
21 遞歸函數(shù)最終會(huì)結(jié)束,那么這個(gè)函數(shù)一定?(B)
A 使用了局部變量
B 有一個(gè)分支不調(diào)用自身
C 使用了全局變量或者使用了一個(gè)或多個(gè)參數(shù)
D 沒(méi)有循環(huán)調(diào)用
22 編譯過(guò)程中,語(yǔ)法分析器的任務(wù)是(B)
A分析單詞是怎樣構(gòu)成的
B 分析單詞串是如何構(gòu)成語(yǔ)言和說(shuō)明的
C 分析語(yǔ)句和說(shuō)明是如何構(gòu)成程序的
D 分析程序的結(jié)構(gòu)
23 同步機(jī)制應(yīng)該遵循哪些基本準(zhǔn)則?(ABCD)
A.空閑讓進(jìn) B.忙則等待 C.有限等待 D.讓權(quán)等待
24 進(jìn)程進(jìn)入等待狀態(tài)有哪幾種方式?(D)
A CPU調(diào)度給優(yōu)先級(jí)更高的線程
B 阻塞的線程獲得資源或者信號(hào)
C 在時(shí)間片輪轉(zhuǎn)的情況下,如果時(shí)間片到了
D 獲得spinlock未果
25 設(shè)計(jì)模式中,屬于結(jié)構(gòu)型模式的有哪些?(BC)
A 狀態(tài)模式 B 裝飾模式 C 代理模式 D 觀察者模式
二、填空題(共4題10個(gè)空,每空2分,共20 分)
1 設(shè)有字母序列{Q,D,F,X,A,P,N,B,Y,M,C,W},請(qǐng)寫(xiě)出按二路歸并方法對(duì)該序列進(jìn)行一趟掃描后的結(jié)果為DQFXAPBNMYCW。
2 關(guān)鍵碼序列(Q,H,C,Y,Q,A,M,S,R,D,F,X),要按照關(guān)鍵碼值遞增的次序進(jìn)行排序,若采用初始步長(zhǎng)為4的Shell的排序法,則一趟掃描的結(jié)果是QACSQDFXRHMY;若采用以第一個(gè)元素為分界元素的快速排序法,則掃描一趟的結(jié)果是FHCDQAMQRSYX。
3 二進(jìn)制地址為011011110000,大小為(4)10和(16)10塊的伙伴地址分別為:_________,_________。
4 設(shè)t是給定的一棵二叉樹(shù),下面的遞歸程序count(t)用于求得:二叉樹(shù)t中具有非空的左、右兩個(gè)兒子的結(jié)點(diǎn)個(gè)數(shù)N2;只有非空左兒子的個(gè)數(shù)NL;只有非空右兒子的結(jié)點(diǎn)個(gè)數(shù)NR和葉子結(jié)點(diǎn)個(gè)數(shù)N0。N2,NL,NR、N0都是全局量,且在調(diào)用count(t)之前都置為0。
[cpp] view plaincopy
typedef struct node
{
int data;
struct node*lchild,*rchild;
}node;
int N2,NL,NR,N0;
void count(node *t)
{
if(t->lchild!=NULL)
if(t->rchild!=NULL) N2++;
elseNL++;
else if (t->rchild!=NULL)NR++;
else N0++;
if(t->lchild!=NULL)count(t->lchild);
if(t->rchild!=NULL)count(t->rchild);
}/* call form :if(t!=NULL)count(t);*/
三、Web前端方向簡(jiǎn)單題(略)
四、其他方向簡(jiǎn)答題(共2題,每題20分),選作題,不計(jì)入總分)
1 請(qǐng)?jiān)O(shè)計(jì)一個(gè)排隊(duì)系統(tǒng),能夠讓每個(gè)進(jìn)入隊(duì)伍的用戶都能看到自己在隊(duì)列中所處的位置和變化,隊(duì)伍可能隨時(shí)有人加入和退出;當(dāng)有人退出影響到用戶的位置排名時(shí)需要及時(shí)反饋到用戶。
2 A,B兩個(gè)整數(shù)集合,設(shè)計(jì)一個(gè)算法求他們的交集,盡可能的高效。