日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据结构试卷及答案(六)

發布時間:2024/8/1 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据结构试卷及答案(六) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 一、選擇題

  • 1、設一組權值集合W={2,3,4,5,6},則由該權值集合構造的哈夫曼樹中帶權路徑長度之和為(? )。?
    (A) 20???????????
    (B) 30?????????
    (C) 40?????????
    (D) 45

  • 參考答案是:D

    2、執行一趟快速排序能夠得到的序列是(? )。?
    (A) [41,12,34,45,27] 55 [72,63]
    (B) [45,34,12,41] 55 [72,63,27]
    (C) [63,12,34,45,27] 55 [41,72]
    (D) [12,27,45,41] 55 [34,63,72]

    參考答案是:A

    3、設一條單鏈表的頭指針變量為head且該鏈表沒有頭結點,則其判空條件是(? )。
    (A) head==0?????????????????????????????
    (B) head->next==0
    (C) head->next==head???
    (D) head!=0

    參考答案是:A

    4、時間復雜度不受數據初始狀態影響而恒為O(nlog2n)的是(? )。?
    (A) 堆排序???????
    (B) 冒泡排序????
    (C) 希爾排序???
    (D) 快速排序

    參考答案是:A

    5、設二叉樹的先序遍歷序列和后序遍歷序列正好相反,則該二叉樹滿足的條件是(? )。?
    (A) 空或只有一個結點?????????????
    (B) 高度等于其結點數?
    (C) 任一結點無左孩子?????????????
    (D) 任一結點無右孩子

    參考答案是:D

    6、一趟排序結束后不一定能夠選出一個元素放在其最終位置上的是(? )。?
    (A) 堆排序??????
    (B) 冒泡排序????
    (C) 快速排序??
    (D) 希爾排序

    參考答案是:D

    7、設某棵三叉樹中有40個結點,則該三叉樹的最小高度為(? )。?
    (A) 3????????????
    (B) 4??????????
    (C) 5???????????
    (D) 6

    參考答案是:B

    8、順序查找不論在順序線性表中還是在鏈式線性表中的時間復雜度為(? )。?
    (A) O(n)????????
    (B) O(n2)??????
    (C) O(n1/2)??????
    (D) O(1og2n)

    參考答案是:A

    9、二路歸并排序的時間復雜度為(? )。?
    (A) O(n)????????
    (B) O(n2)??????
    (C) O(nlog2n)??
    (D) O(1og2n)

    參考答案是:C

    10、深度為k的完全二叉樹中最少有(? )個結點。?
    (A) 2k-1-1????????
    (B) 2k-1????????
    (C) 2k-1+1??????
    (D) 2k-1

    參考答案是:B

    11、設指針變量front表示鏈式隊列的隊頭指針,指針變量rear表示鏈式隊列的隊尾指針,指針變量s指向將要入隊列的結點X,則入隊
    列的操作序列為(? )。?
    (A) front->next=s;front=s;?????
    (B) s->next=rear;rear=s;?
    (C) rear->next=s;rear=s;??????
    (D) s->next=front;front=s;

    參考答案是:C

    12、設某無向圖中有n個頂點e條邊,則建立該圖鄰接表的時間復雜度為(? )。?
    (A) O(n+e)???????
    (B) O(n2)??????
    (C) O(ne)???????
    (D) O(n3)

    參考答案是:A

    13、設某哈夫曼樹中有199個結點,則該哈夫曼樹中有(? )個葉子結點。?
    (A) 99???????????
    (B) 100????????
    (C) 101?????????
    (D) 102

    參考答案是:B

    14、設二叉排序樹上有n個結點,則在二叉排序樹上查找結點的平均時間復雜度為(? )。?
    (A) O(n)?????????
    (B) O(n2)???????
    (C) O(nlog2n)??
    (D) O(1og2n)

    參考答案是:D

    15、設用鄰接矩陣A表示有向圖G的存儲結構,則有向圖G中頂點i的入度為(? )。?
    (A) 第i行非0元素的個數之和?????
    (B) 第i列非0元素的個數之和?
    (C) 第i行0元素的個數之和??????
    (D) 第i列0元素的個數之和

    參考答案是:B

    二、判斷題

  • 1、調用一次深度優先遍歷可以訪問到圖中的所有頂點。(? )

  • 參考答案是:錯

    2、分塊查找的平均查找長度不僅與索引表的長度有關,而且與塊的長度有關。(? )

    參考答案是:對

    3、冒泡排序在初始關鍵字序列為逆序的情況下執行的交換次數最多。(? )

    參考答案是:對

    4、滿二叉樹一定是完全二叉樹,完全二叉樹不一定是滿二叉樹。(? )

    參考答案是:對

    5、設一棵二叉樹的先序序列和后序序列,則能夠唯一確定出該二叉樹的形狀。(? )

    參考答案是:錯

    6、層次遍歷初始堆可以得到一個有序的序列。(? )

    參考答案是:錯

    7、設一棵樹T可以轉化成二叉樹BT,則二叉樹BT中一定沒有右子樹。(? )

    參考答案是:對

    8、線性表的順序存儲結構比鏈式存儲結構更好。(? )

    參考答案是:錯

    9、中序遍歷二叉排序樹可以得到一個有序的序列。(? )

    參考答案是:對

    10、快速排序是排序算法中平均性能最好的一種排序。(? )

    參考答案是:對

    三、填空題

  • 1、for(i=1,t=1,s=0;i<=n;i++)?
    {
    ?????? t=t*i;
    ?????? s=s+t;
    }
    上述程序的時間復雜度為_________。

  • 參考答案是:O(n)

    2、設指針變量p指向單鏈表中結點A,指針變量s指向被插入的新結點X,則進行插入操作的語句序列為_________(設結點的指針
    域為next)。

    參考答案是:s->next=p->next; p->next=s;

    3、設有向圖G的二元組形式表示為G =(D,R),D={1,2,3,4,5},R={r},r={<1,2>,<2,4>,<4,5>,<1,3>,<3,2>,<3,5>},
    則給出該圖的一種拓撲排序序列__________。

    參考答案是:(1,3,2,4,5)

    4、設無向圖G中有n個頂點,則該無向圖中每個頂點的度數最多是_________。

    參考答案是:n-1

    5、設二叉樹中度數為0的結點數為50,度數為1的結點數為30,則該二叉樹中總共有_______個結點數。

    參考答案是:129

    6、設F和R分別表示順序循環隊列的頭指針和尾指針,則判斷該循環隊列為空的條件為_____________。

    參考答案是:F==R

    7、設二叉樹中結點的兩個指針域分別為lchild和rchild,則判斷指針變量p所指向的結點為葉子結點的條件是_____________。

    參考答案是:p->lchild==0&&p->rchild==0

    8、簡單選擇排序和直接插入排序算法的平均時間復雜度為___________。

    參考答案是:O(n2)

    9、快速排序算法的空間復雜度平均情況下為__________,最壞的情況下為__________。

    參考答案是:O(nlog2n), O(n)

    10、散列表中解決沖突的兩種方法是_____________和_____________。

    參考答案是:開放定址法,鏈地址法

    四、算法設計題

  • 1、設計在順序有序表中實現二分查找的算法。

  • 參考答案是:struct?record? {int?key;?int?others; }; int?bisearch(struct?record?r[?],?int?k) {int?low=0,mid,high=n-1;while(low<=high){mid=(low+high)/2;if(r[mid].key==k)?return(mid+1);?else?if(r[mid].key>k)?high=mid-1;?else?low=mid+1;}return(0); }

    2、設計判斷二叉樹是否為二叉排序樹的算法。

    參考答案是:int?minnum=-32768,flag=1; typedef?struct?node {int?key;?struct?node?*lchild,*rchild; }bitree; void?inorder(bitree?*bt) {if?(bt!=0)?{inorder(bt->lchild);?if(minnum>bt->key)flag=0;?minnum=bt->key;inorder(bt->rchild);} }

    3、在鏈式存儲結構上設計直接插入排序算法。

    參考答案是:void?straightinsertsort(lklist?*&head) {lklist?*s,*p,*q;??int?t;if(head==0?||?head->next==0)?return;else?for(q=head,p=head->next;p!=0;p=q->next){for(s=head;s!=q->next;s=s->next)?if?(s->data>p->data)?break;if(s==q->next)q=p;else{q->next=p->next;?p->next=s->next;?s->next=p;?t=p->data;p->data=s->data;s->data=t;}} }


    來源:我是碼農,轉載請保留出處和鏈接!

    本文鏈接:http://www.54manong.com/?id=50

    '); (window.slotbydup = window.slotbydup || []).push({ id: "u3646208", container: s }); })(); '); (window.slotbydup = window.slotbydup || []).push({ id: "u3646147", container: s }); })();

    總結

    以上是生活随笔為你收集整理的数据结构试卷及答案(六)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。