一、選擇題
1,以下JavaScript代碼執行結果是()
var x=1;
(function(){
x=2;
y=2;
}){ }
alert(x==y);
A TRUE
B FALSE
C 瀏覽器腳本錯誤
D NULL
2,以下關於TCP通信中描述正確的是()
A Http協議是建立在TCP協議基礎之上的應用層協議
B 當網絡狀態異常時,對TCP網絡的影響是掉包率較高
C 當網絡收到SYN Flood 攻擊時,查看Server端口狀態大量處於SYN_RECV狀態
D TCP連接以CLOSE_WAIT狀態結束
E TCP連接可以由Server端主動發起斷開請求
3,以下關於鏈表的描述哪個正確()
A 鏈表的元素在內存中是連續存放的
B 鏈表可用於實現棧、隊列、字典等數據類型
C 鏈表中一定存在唯一一個沒有前驅的元素,以及唯一一個沒有后驅的元素
D 在鏈表中插入元素效率比數組低
數組和鏈表的區別
-
數組是將元素在內存中連續存放,由於每個元素占用內存相同,可以通過下標迅速訪問數組中任何元素。但是如果要在數組中增加一個元素,需要移動大量元素,在內存中空出一個元素的空間,然后將要增加的元素放在其中。同樣的道理,如果想刪除一個元素,同樣需要移動大量元素去填掉被移動的元素。如果應用需要快速訪問數據,很少或不插入和刪除元素,就應該用數組。
-
鏈表恰好相反,鏈表中的元素在內存中不是順序存儲的,而是通過存在元素中的指針聯系到一起。比如:上一個元素有個指針指到下一個元素,以此類推,直到最后一個元素。如果要訪問鏈表中一個元素,需要從第一個元素開始,一直找到需要的元素位置。但是增加和刪除一個元素對於鏈表數據結構就非常簡單了,只要修改元素中的指針就可以了。如果應用需要經常插入和刪除元素你就需要用鏈表數據結構了。
*C++語言中可以用數組處理一組數據類型相同的數據,但不允許動態定義數組的大小,即在使用數組之前必須確定數組的大小。而在實際應用中,用戶使用數組之前有時無法准確確定數組的大小,只能將數組定義成足夠大小,這樣數組中有些空間可能不被使用,從而造成內存空間的浪費。鏈表是一種常見的數據組織形式,它采用動態分配內存的形式實現。需要時可以用new分配內存空間,不需要時用delete將已分配的空間釋放,不會造成內存空間的浪費。
(1) 從邏輯結構角度來看
a, 數組必須事先定義固定的長度(元素個數),不能適應數據動態地增減的情況。當數據增加時,可能超出原先定義的元素個數;當數據減少時,造成內存浪費。
b,鏈表動態地進行存儲分配,可以適應數據動態地增減的情況,且可以方便地插入、刪除數據項。(數組中插入、刪除數據項時,需要移動其它數據項)
(2)從內存存儲角度來看
a,(靜態)數組從棧中分配空間, 對於程序員方便快速,但自由度小。
b, 鏈表從堆中分配空間, 自由度大但申請管理比較麻煩.
4,請選擇在附圖上運行最短路徑算法時,可能會依次添加到已選集合的邊的順序()
6、以下哪些對象是分配在棧上的()
A 函數內局部變量
B 函數內局部指針變量
C 函數內動態申請的對象
D 函數內指向動態申請的對象的局部指針變量
9、設棧S和隊列Q的初始狀態為空,元素a,b,c,d,e,f依次通過棧S,一個元素出棧后即進入隊列Q,若出隊列的順序為b,d,c,f,e,a,則棧S的容量至少為多少?
A 2 B 3 C 4 D 5
10,設無向圖G中的邊的集合E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)},則從頂點出發進行深度優先遍歷,可以得到的頂點序列有()
A aedfcb B acfebd C aebcfd D acdfbc
11,
13,QQ轉台包括在線,離線,隱身,離開四種狀態,假如QQ號碼數為4.2億,最少用多少內存標識所有用戶狀態?
A 約500M B 約1G C 約4G D 約16G
14,某系統采用36進制表示一個字符串,36個字符0-9a-z分別表示數字的0-35,則10進制數字873085表示字符串()
A imac B ipad C iphone D ipod
17,以下關於操作系統說法正確的是()
A 同一個線程內可以同時運行多個消息循環
B Windows中使用的臨界區,不需要切換到內核態
C 互斥量可以用於多進程間對資源安全共享
D 信號量允許多個線程同時使用共享資源
19,以下排序算法,時間復雜度是O(nlog(n))且時間復雜度穩定的是()
A 冒泡排序 B 堆排序 C 歸並排序 D 快速排序
21,一般認為,面向對象程序設計有SOLID五大原則,以下正確描述的()
22,
1 const char* s="hello tencent.\0"; 2 printf("%d,%d",int sizeof(s),int strlen(s));
在32位和64位系統下,以上代碼的輸出結果是()
A 4,16 B 4,14 C 8,16 D 8,14
24,
25,
26,以下這些樹中,屬於平衡二叉樹的是()
A 紅黑樹 B 二叉查找樹 C B+樹 D 八叉樹 E 完全二叉樹
28,
二,編程題
1,Heap和Stack的區別
2,
3,
4,