中國大學MOOC-陳越、何欽銘-數據結構-2021春期中考試


個人記錄 錯題

 
判斷題
R1-1

用鄰接表法存儲圖,占用的存儲空間數只與圖中結點個數有關,而與邊數無關。(3分) 


 
R1-2 

如果無向圖G必須進行兩次廣度優先搜索才能訪問其所有頂點,則G中一定有回路。(3分) F


 
R1-3

對於順序存儲的長度為N的線性表,刪除第一個元素和插入最后一個元素的時間復雜度分別對應為O(1)和O(N)。(3分) F 都是O(1)


 
R1-4

通過對堆棧S操作:Push(S,1), Push(S,2), Pop(S), Push(S,3), Pop(S), Pop(S)。輸出的序列為:123。(3分) F


 
R1-5

在用數組表示的循環隊列中,front值一定小於等於rear值。(2分) F


 
R1-6

已知一棵二叉樹的先序遍歷結果是ABC, 則CAB不可能是中序遍歷結果。(3分) T


 
R1-7

將一棵完全二叉樹存於數組中(根結點的下標為1)。則下標為23和24的兩個結點是兄弟。(3分) F


 
R1-8

若一棵平衡二叉樹的所有非葉結點的平衡因子都是0,則其必為完美二叉樹。 (3分) T 完美二叉樹     是完全二叉樹 ,但完全二叉樹不一定是完美二叉樹 


 
R1-9

在一棵由包含4、5、6等等一系列整數結點構成的二叉搜索樹中,如果結點4和6在樹的同一層,那么可以斷定結點5一定是結點4和6的父親結點。(3分) F


 
R1-10

算法分析的兩個主要方面是時間復雜度和空間復雜度的分析。(2分) T


 
選擇題
R2-1

在並查集問題中,已知集合元素0~8所以對應的父結點編號值分別是{ 1, -4, 1, 1, -3, 4, 4, 8, -2 }(注:n表示樹根且對應集合大小為n),那么將元素6和8所在的集合合並(要求必須將小集合並到大集合)后,該集合對應的樹根和父結點編號值分別是多少?(4分) D.4和-5

 
8和-5   1和-6   8和-6  

 
R2-2

設一段文本中包含字符{a, b, c, d, e},其出現頻率相應為{3, 2, 5, 1, 1}。則經過哈夫曼編碼后,文本所占字節數為:(4分) D.25

36  12  


 
R2-3

下列哪個函數是O(N)的?(4分)  B.log(N​^2)

N​^2​​/2  log(N​^2)​​  2NlogN  

 
R2-4

設 n 是描述問題規模的非負整數,下列程序段的時間復雜度是:(4分) O(n​^(1/2)​​)

x = 0; while ( n >= (x+1)*(x+1) ) x = x+1;
 
O(n​^(1/2)​​)  O(logn)  O(n​^2​​)  

 
R2-5

循環順序隊列中是否可以插入下一個元素()。(4分) B.與隊頭指針和隊尾指針的值有關

與隊頭指針和隊尾指針的值有關
只與隊尾指針的值有關,與隊頭指針的值無關
 

 
R2-6

若某圖的深度優先搜索序列是{V1, V4, V0, V3, V2},則下列哪個圖不可能對應該序列?(4分) D

      D.

 

 
R2-7

在將數據序列( 6, 1, 5, 9, 8, 4, 7 )建成大根堆時,正確的序列變化過程是:(4分) A.6,1,7,9,8,4,5 → 6,9,7,1,8,4,5 → 9,6,7,1,8,4,5 → 9,8,7,1,6,4,5

6,9,5,1,8,4,7  → 6,9,7,1,8,4,5 → 9,6,7,1,8,4,5 → 9,8,7,1,6,4,5
 

 
R2-8

假設有5個整數以1、2、3、4、5的順序被壓入堆棧,且出棧順序為3、5、4、2、1,那么為了獲得這樣的輸出,堆棧大小至少為:(4分) D.4

5   2   4

 
R2-9

將{5, 2, 7, 3, 4, 1, 6}依次插入初始為空的二叉搜索樹。則該樹的后序遍歷結果是:(4分) A.1, 4, 3, 2, 6, 7, 5

5, 4, 3, 7, 6, 2, 1
 

 
R2-10

已知一棵完全二叉樹的第6層(設根為第1層)有8個葉結點,則該完全二叉樹的結點個數最多是:(4分) B.111 第六層裝滿結點32個(最后8個為葉結點) 第七層只有前24*2個結點 共 2^6-1+24*2=111個

119   111  C.39  

 
R2-11

三叉樹中,度為1的結點有5個,度為2的結點3個,度為3的結點2個,問該樹含有幾個葉結點?(4分) B.8 對於度為m叉樹 ,有 n(0)=n(2)+2*n(m)+1

8   13   10

 
R2-12

h為不帶頭結點的單向鏈表。在h的頭上插入一個新結點t的語句是:(4分) C.t->next=h; h=t;

B.t->next=h->next; h=t;


 
 
程序填空題

 
R5-1

下列代碼的功能是將小頂堆H中指定位置P上的元素的整數鍵值下調D個單位,然后繼續將H調整為小頂堆。

void DecreaseKey( int P, int D, PriorityQueue H )
{
   int i, key; key = H->Elements[P] - D; for ( i =/*填空處1 (6分)*/; H->Elements[i/2] > key; i/=2 ) /*填空處2 (6分)*/; H->Elements[i] = key; }

填空處  1. P  2. H->Elements[i] =H->Elements[i/2]

 
 

 
R5-2

下列代碼的功能是返回帶頭結點的單鏈表L的逆轉鏈表。

List Reverse( List L )
{
    Position Old_head, New_head, Temp;
    New_head = NULL; Old_head = L->Next; while ( Old_head ) { Temp = Old_head->Next; /*填空處1 (6分)*/; New_head = Old_head; Old_head = Temp; } /*填空處2 (6分)*/; return L; } 

填空處  1. Temp->next = Old_head  2. L->next=New_head 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM