数据结构试卷及答案(五)
一、選擇題
1、數據的最小單位是(? )。?
(A) 數據項?????
(B) 數據類型????
(C) 數據元素????
(D) 數據變量
2、設一組初始記錄關鍵字序列為(50,40,95,20,15,70,60,45),則以增量d=4的一趟希爾排序結束后前4條記錄關鍵字為
(?? )。?
(A) 40,50,20,95??????????????
(B) 15,40,60,20
(C) 15,20,40,45?????
(D) 45,40,15,20
3、設一組初始記錄關鍵字序列為(25,50,15,35,80,85,20,40,36,70),其中含有5個長度為2的有序子表,則用歸并排序的方法對該記錄關鍵字序列進行一趟歸并后的結果為(?? )。
(A) 15,25,35,50,20,40,80,85,36,70
(B) 15,25,35,50,80,20,85,40,70,36
(C) 15,25,35,50,80,85,20,36,40,70
(D) 15,25,35,50,80,20,36,40,70,85
4、函數substr(“DATASTRUCTURE”,5,9)的返回值為(? )。?
(A) “STRUCTURE”??????????????? ???
(B) “DATA”?
(C) “ASTRUCTUR”??????????????? ????????????????
(D) “DATASTRUCTURE”
5、設一個有序的單鏈表中有n個結點,現要求插入一個新結點后使得單鏈表仍然保持有序,則該操作的時間復雜度為(? )。?
(A) O(log2n)?????
(B) O(1)????????
(C) O(n2)??????
(D) O(n)
6、設一棵m叉樹中度數為0的結點數為N0,度數為1的結點數為N1,……,度數為m的結點數為Nm,則N0=(? )。?
(A) Nl+N2+……+Nm?????????????????
(B) 1+N2+2N3+3N4+……+(m-1)Nm
(C) N2+2N3+3N4+……+(m-1)Nm??????
(D) 2Nl+3N2+……+(m+1)Nm
7、設有序表中有1000個元素,則用二分查找查找元素X最多需要比較(? )次。?
(A) 25???????????
(B) 10??????????
(C) 7???????????????????
(D) 1
8、設連通圖G中的邊集E={(a,b),(a,e),(a,c),(b,e),(e,d),(d,f),(f,c)},則從頂點a出發可以得到一種深度優先遍歷
的頂點序列為(? )。?
(A) abedfc???????
(B) acfebd??????
(C) aebdfc??????????
(D) aedfcb
9、設輸入序列是1、2、3、……、n,經過棧的作用后輸出序列的第一個元素是n,則輸出序列第i個輸出元素是()。?
(A) n-i??????????
(B) n-1-i???????
(C) n+1-i???????????
(D) 不能確定
10、設一組初始記錄關鍵字序列為(45,80,55,40,42,85),則以第一個記錄關鍵字45為基準而得到一趟快速排序的結果是(? )。?
(A) 40,42,45,55,80,83???????
(B) 42,40,45,80,85,88
(C) 42,40,45,55,80,85???????
(D) 42,40,45,85,55,80
二、填空題
1、設有一個順序共享棧S[0:n-1],其中第一個棧項指針top1的初值為-1,第二個棧頂指針top2的初值為n,則判斷共享棧滿的條件
是____________________。
2、在圖的鄰接表中用順序存儲結構存儲表頭結點的優點是____________________。
參考答案是:可以隨機訪問到任一個頂點的簡單鏈表3、設有一個n階的下三角矩陣A,如果按照行的順序將下三角矩陣中的元素(包括對角線上元素)存放在n(n+1)個連續的存儲單元
中,則A[i][j]與A[0][0]之間有_______個數據元素。
4、棧的插入和刪除只能在棧的棧頂進行,后進棧的元素必定先出棧,所以又把棧稱為__________表;隊列的插入和刪除運算分別
在隊列的兩端進行,先進隊列的元素必定先出隊列,所以又把隊列稱為_________表。
5、設一棵完全二叉樹的順序存儲結構中存儲數據元素為ABCDEF,則該二叉樹的前序遍歷序列為___________,中序遍歷序列為
___________,后序遍歷序列為___________。
6、設一棵完全二叉樹有128個結點,則該完全二叉樹的深度為________,有__________個葉子結點。
參考答案是:8,647、設有向圖G的存儲結構用鄰接矩陣A來表示,則A中第i行中所有非零元素個數之和等于頂點i的________,第i列中所有非零元素
個數之和等于頂點i的__________。
8、設一組初始記錄關鍵字序列(k1,k2,……,kn)是堆,則對i=1,2,…,n/2而言滿足的條件為___________________。
參考答案是:ki<=k2i?&& ki<=k2i+19、下面程序段的功能是實現冒泡排序算法,請在下劃線處填上正確的語句。
void bubble(int ?r[n])
{
???? for(i=1;i<=n-1; i++)
???? {
???????? for(exchange=0,j=0; j<_____________;j++)?
???????? if (r[j]>r[j+1])
???????? {
???????????? temp=r[j+1];
???????????? ______________;
???????????? r[j]=temp;
???????????? exchange=1;
???????? }
???????? if (exchange==0)?
??????????? return;
???? }
}
10、下面程序段的功能是實現二分查找算法,請在下劃線處填上正確的語句。
struct record
{
???? int key;?
???? int others;
};
int bisearch(struct record r[ ], int k)
{
???? int low=0,mid,high=n-1;
???? while(low<=high)
???? {
???? _________________;
???? if(r[mid].key==k)?
???????? return(mid+1);?
???? else if(____________)
???????? high=mid-1;
???? else?
???????? low=mid+1;
???? }
???? return(0);
}
三、應用題
1、設某棵二叉樹的中序遍歷序列為DBEAC,前序遍歷序列為ABDEC,要求給出該二叉樹的的后序遍歷序列。
2、設無向圖G(如下圖所示),給出該圖的最小生成樹上邊的集合并計算最小生成樹各邊上的權值之和。?
3、設一組初始記錄關鍵字序列為(15,17,18,22,35,51,60),要求計算出成功查找時的平均查找長度。
參考答案是:ASL=(1*1+2*2+3*4)/7=17/74、設散列表的長度為8,散列函數H(k)=k mod 7,初始記錄關鍵字序列為(25,31,8,27,13,68),要求分別計算出用線性探測
法和鏈地址法作為解決沖突方法的平均查找長度。
四、算法設計題
1、設計判斷兩個二叉樹是否相同的算法。
2、設計兩個有序單鏈表的合并排序算法。
參考答案是:void?mergelklist(lklist?*ha,lklist?*hb,lklist?*&hc) {lklist?*s=hc=0;while(ha!=0?&&?hb!=0)if(ha->datadata){if(s==0)?hc=s=ha;?else?{s->next=ha;?s=ha;}ha=ha->next;}else?{if(s==0)?hc=s=hb;?else?{s->next=hb;?s=hb;}hb=hb->next;}if(ha==0)?s->next=hb;?else?s->next=ha; }來源:我是碼農,轉載請保留出處和鏈接!
本文鏈接:http://www.54manong.com/?id=49
'); (window.slotbydup = window.slotbydup || []).push({ id: "u3646208", container: s }); })(); '); (window.slotbydup = window.slotbydup || []).push({ id: "u3646147", container: s }); })();總結
以上是生活随笔為你收集整理的数据结构试卷及答案(五)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 游戏战斗力量模型量化
- 下一篇: 计算机图形学介绍