【2020-MOOC-浙江大學-陳越、何欽銘-數據結構】春期中考試(附每一個題目的詳細解析)


〇、前言

這周開始了【MOOC-浙江大學-陳越、何欽銘-數據結構】的期中考試,感覺有點難,可能是我才學了一個月不到的原因???
在這里插入圖片描述

一、判斷題

1-1、用 鄰接表 法存儲圖,占用的存儲空間數只與圖中結點個數有關,而與邊數無關。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

鄰接矩陣的空間復雜度為O( n 2 n^2 ),與邊的個數無關。
鄰接表的空間復雜度為O( n + e n+e ),與圖中的結點個數和邊的個數都有關。


1-2、在一棵由包含4、5、6等等一系列整數結點構成的 二叉搜索樹 中,如果結點4和6在樹的同一層,那么可以斷定結點5一定是結點4和6的父親結點。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

5是6的左子樹節點就是一個反例。


1-3、如果無向圖 G 必須進行兩次 廣度優先搜索 才能訪問其所有頂點,則 G 一定有2個連通分量。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

連通分量:無向圖的極大連通子圖。
在這里插入圖片描述
相似但是錯誤的說法:如果無向圖G必須進行兩次廣度優先搜索才能訪問其所有頂點,則G中一定有回路。


1-4、若一棵 平衡二叉樹 的所有非葉結點的 平衡因子 都是0,則其必為完美二叉樹。
在這里插入圖片描述
作者: 徐鏡春
單位: 浙江大學

平衡因子是0,代表着左右子樹的高度一樣。
在這里插入圖片描述
在這里插入圖片描述


1-5、若一個結點是某二叉樹的 中序遍歷序列 的最后一個結點,則它必是該樹的 前序遍歷序列 中的最后一個結點。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

假設:
A
/
B
中序是左一根一右順序,前序是根一左一右順序:

  • 前序遍歷序列為A-B;
  • 中序遍歷序列為B-A;

那么結點A是中序遍歷序列的最后一個結點,但是它並不是前序遍歷序列中的最后一個結點。
如果【若一個結點】改成【若一個葉子結點】,那么命題為真。


1-6、一棵有124個結點的 完全二叉樹,其葉結點個數是確定的。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

在這里插入圖片描述
124上限是128( 2 7 2^7 ),下限是64( 2 6 2^6 ),中間這些都可以是葉子結點數。
補充:
假設 n0 是度為0的節點總數(即葉子結點數),n1 是度為1的節點總數,n2 是度為2的節點總數。因為 n= n0+n1+n2(其中n為完全二叉樹的節點總數),又因為一個度為2的節點會有2個子結點,一個度為1的結點會有1個子結點,除根結點外其他節點都有父結點,得到 n= 1+n1+2*n2;兩式把 n2 消去得:n= 2*n0+n1-1,由於完全二叉樹中度為1的結點數只有兩種可能0或1,由此得到 n0=n/2n0=(n+1)/2


1-7、算法 可以沒有輸入,但是必須有輸出。
在這里插入圖片描述
作者: 李廷元
單位: 中國民用航空飛行學院

在這里插入圖片描述


1-8、通過對 堆棧 S操作:Push(S,1), Push(S,2), Pop(S), Push(S,3), Pop(S), Pop(S)。輸出的序列為:123。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

堆棧內的元素 輸出的元素 執行的操作
1 - Push(S,1)
2,1 - Push(S,2)
2 ,1 2 Pop(S)
3,1 2 Push(S,3)
3 ,1 2,3 Pop(S)
1 2,3,1 Pop(S)

1-9、在用數組表示的 循環隊列 中,front 值一定小於等於 rear 值。
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

循環隊列!!!


1-10、在具有N個結點的單鏈表中,訪問結點和增加結點的時間復雜度分別對應為 O(1)O(N)
在這里插入圖片描述
作者: DS課程組
單位: 浙江大學

都是O(N)。


二、選擇題

2-1、下列哪個函數是O(N)的?
在這里插入圖片描述
答案:A
作者: DS課程組
單位: 浙江大學

在這里插入圖片描述


2-2、先序遍歷圖示 二叉樹 的結果為
在這里插入圖片描述
在這里插入圖片描述
答案:B
作者: DS課程組
單位: 浙江大學

先序遍歷是根–左--右。


2-3、若某圖的 深度優先搜索 序列是{V1, V4, V0, V3, V2},則下列哪個圖不可能對應該序列?
在這里插入圖片描述
答案:C
作者: 陳越
單位: 浙江大學

C應該是1,4,3,0,2。


2-4、已知一棵 完全二叉樹 的第6層(設根為第1層)有8個葉結點,則該完全二叉樹的結點個數最多是:
在這里插入圖片描述
答案:C
作者: DS課程組
單位: 浙江大學

完全二叉樹比起滿二叉樹,只是在最下面一層的右邊缺少了部分葉結點,而最后一層之上是個滿二叉樹,並且只有最后兩層上有葉結點。
第6層有葉結點,則完全二叉樹的高度可能為6或7,顯然樹高為7時結點更多。若第6層上有8個葉結點,則前六層為滿二叉樹,而第7層缺失了8×2=16個葉結點,故完全二叉樹的結點個數最多為 2 7 1 16 = 111 2^7-1-16=111 個結點。


2-5、已知表頭元素為c的 單鏈表 在內存中的存儲狀態如下表所示:
在這里插入圖片描述
現將 f 存放於 1014H 處,並插入到單鏈表中,若 f 在邏輯上位於 ae 之間,則 aef 的“鏈接地址”依次是:
在這里插入圖片描述
答案:D
作者: DS課程組
單位: 浙江大學

f 在邏輯上位於 ae 之間,則 a 的鏈接地址為1014,即 f 的地址,f 的鏈接地址為1010,即 e 的地址,其他的鏈接地址則不變。


2-6、對 最小堆(小頂堆) {1,3,2,12,6,4,8,15,14,9,7,5,11,13,10} 進行三次刪除最小元的操作后,結果序列為:
在這里插入圖片描述
答案:C
作者: DS課程組
單位: 浙江大學

硬算。


2-7、在一個不帶頭結點的非空 鏈式隊列 中,假設 fr 分別為隊頭和隊尾指針,則插入 s 所指的結點運算是( )。
在這里插入圖片描述
答案:B
單位: 浙江大學城市學院

隊列尾部插入元素。


2-8、表達式 a*(b+c)-d后綴表達式 是:
在這里插入圖片描述
答案:A
作者: DS課程組
單位: 浙江大學

后綴表達式。


2-9、一棵 二叉樹 中,雙分支結點數為15,單分支結點數為30,則葉子結點數為()個。
在這里插入圖片描述
答案:B
作者: 嚴冰
單位: 浙江大學城市學院

在這里插入圖片描述


2-10、在並查集問題中,已知集合元素0~8所以對應的父結點編號值分別是{ 1, -4, 1, 1, -3, 4, 4, 8, -2 }(注:−n表示樹根且對應集合大小為n),那么將元素6和8所在的集合合並(要求必須將小集合並到大集合)后,該集合對應的樹根和父結點編號值分別是多少?
在這里插入圖片描述
答案:B
作者: DS課程組
單位: 浙江大學

在這里插入圖片描述


2-11、設一段文本中包含字符{a, b, c, d, e},其出現頻率相應為{3, 2, 5, 1, 1}。則經過哈夫曼編碼后,文本所占字節數為:
在這里插入圖片描述
答案:C
作者: DS課程組
單位: 浙江大學

在這里插入圖片描述


2-12、下列函數

int func ( int n )
{   int i = 0, sum = 0;
    while ( sum < n )  sum += ++i;
    return i;
}

的時間復雜度是:
在這里插入圖片描述
答案:B
作者: 考研試卷
單位: 浙江大學

進行t次循環后,sum = (k+1)*k/2 < n,左側約等於 k*k,則 t 等於 sqrt(n),時間復雜度為O( n ( 1 / 2 ) n^{(1/2)} )。


三、程序填空題

1、下列代碼的功能是返回帶頭結點的單鏈表 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;
		Old_head->Next=New_head;	//需要填寫的語句
        New_head = Old_head;  
        Old_head = Temp; 
    }
	L->Next=New_head;				//需要填寫的語句
    return L;
}

以前我們用漫畫講過,可以自行查看,【手繪漫畫】面試必考之圖解逆轉單鏈表/單鏈表逆序


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

void IncreaseKey( int P, int D, PriorityQueue H )
{
   int i, key;
   key = H->Elements[P] + D;
   for ( i = P;								//需要填寫的語句
   		H->Elements[i/2] < key;
   		i/=2 )  
		H->Elements[i] = H->Elements[i/2];	//需要填寫的語句
	H->Elements[i] = key;
}

與插入類似。
在這里插入圖片描述

總結

簡單總結下,光看課和課件是不夠的的,還是建議看看課程的書。
在這里插入圖片描述
我放在公眾號里了,歡迎自行去取!

回復【浙江大學】即可獲得,這可是我花了積分在CSDN上下的啊!!!

在這里插入圖片描述

如果有幸幫到你,請幫我點個【贊】,給個【關注】!如果能順帶【評論】給個鼓勵,我將不勝感激。

如果想要更多的資源,歡迎關注 @我是管小亮,文字強迫症MAX~

回復【數據結構】即可獲取我為你准備的大禮。

想看更多文(段)章(子),歡迎關注微信公眾號「程序員管小亮」~

在這里插入圖片描述


免責聲明!

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



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