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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

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

  • 1、下列程序段的時間復(fù)雜度為(? )。?
    i=0,s=0;?
    while (s<n)?
    {
    ???? s=s+i;
    ???? i++;
    }
    (A) O(n1/2)????????
    (B) O(n1/3)??????
    (C) O(n)???????
    (D) O(n2)

  • 參考答案是:A

    2、設(shè)某鏈表中最常用的操作是在鏈表的尾部插入或刪除元素,則選用下列(? )存儲方式最節(jié)省運(yùn)算時間。?
    (A) 單向鏈表?????????????????????
    (B) 單向循環(huán)鏈表?
    (C) 雙向鏈表?????????????????????
    (D) 雙向循環(huán)鏈表

    參考答案是:D

    3、設(shè)指針q指向單鏈表中結(jié)點(diǎn)A,指針p指向單鏈表中結(jié)點(diǎn)A的后繼結(jié)點(diǎn)B,指針s指向被插入的結(jié)點(diǎn)X,則在結(jié)點(diǎn)A和結(jié)點(diǎn)B插入結(jié)點(diǎn)
    X的操作序列為(? )。?
    (A) s->next=p->next;p->next=-s;
    (B) q->next=s; s->next=p;?
    (C) p->next=s->next;s->next=p;
    (D) p->next=s;s->next=q;

    參考答案是:B

    4、設(shè)輸入序列為1、2、3、4、5、6,則通過棧的作用后可以得到的輸出序列為(? )。?
    (A) 5,3,4,6,1,2?????????????
    (B) 3,2,5,6,4,1
    (C) 3,1,2,5,4,6?????????????
    (D) 1,5,4,6,2,3

    參考答案是:B

    5、設(shè)有一個10階的下三角矩陣A(包括對角線),按照從上到下、從左到右的順序存儲到連續(xù)的55個存儲單元中,每個數(shù)組元素占
    1個字節(jié)的存儲空間,則A[5][4]地址與A[0][0]的地址之差為(? )。?
    (A) 10???????????
    (B) 19?????????
    (C) 28??????????
    (D) 55

    參考答案是:B

    6、二叉排序樹中左子樹上所有結(jié)點(diǎn)的值均(? )根結(jié)點(diǎn)的值。?
    (A) <????????????
    (B) >??????????
    (C) =??????????
    (D) !=

    參考答案是:A

    7、設(shè)一組權(quán)值集合W=(15,3,14,2,6,9,16,17),要求根據(jù)這些權(quán)值集合構(gòu)造一棵哈夫曼樹,則這棵哈夫曼樹的帶權(quán)路徑長
    度為(? )。?
    (A) 129??????????
    (B) 219?????????
    (C) 189?????????
    (D) 229

    參考答案是:D

    8、設(shè)有n個關(guān)鍵字具有相同的Hash函數(shù)值,則用線性探測法把這n個關(guān)鍵字映射到HASH表中需要做(? )次線性探測。?
    (A) n2????????????
    (B) n(n+1)??????
    (C) n(n+1)/2????
    (D) n(n-1)/2

    參考答案是:D

    9、設(shè)某棵二叉樹中只有度數(shù)為0和度數(shù)為2的結(jié)點(diǎn)且度數(shù)為0的結(jié)點(diǎn)數(shù)為n,則這棵二叉中共有(? )個結(jié)點(diǎn)。?
    (A) 2n??????????
    (B) n+l?????????
    (C) 2n-1????????
    (D) 2n+l

    參考答案是:C

    10、設(shè)一組初始記錄關(guān)鍵字的長度為8,則最多經(jīng)過(? )趟插入排序可以得到有序序列。?
    (A) 6???????????
    (B) 7??????????
    (C) 8??????????
    (D) 9

    參考答案是:B

    11、設(shè)一組初始記錄關(guān)鍵字序列為(Q,H,C,Y,P,A,M,S,R,D,F,X),則按字母升序的第一趟冒泡排序結(jié)束后的結(jié)果是
    (?? )。
    (A)? F,H,C,D,P,A,M,Q,R,S,Y,X
    (B)? P,A,C,S,Q,D,F,X,R,H,M,Y
    (C)? A,D,C,R,F,Q,M,S,Y,P,H,X
    (D)? H,C,Q,P,A,M,S,R,D,F,X,Y

    參考答案是:D

    二、填空題

  • 1、設(shè)需要對5個不同的記錄關(guān)鍵字進(jìn)行排序,則至少需要比較_____________次,至多需要比較_____________次。

  • 參考答案是:4,10

    2、快速排序算法的平均時間復(fù)雜度為____________,直接插入排序算法的平均時間復(fù)雜度為___________。

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

    3、設(shè)二叉排序樹的高度為h,則在該樹中查找關(guān)鍵字key最多需要比較_________次。

    參考答案是:n

    4、設(shè)在長度為20的有序表中進(jìn)行二分查找,則比較一次查找成功的結(jié)點(diǎn)數(shù)有_________個,比較兩次查找成功有結(jié)點(diǎn)數(shù)有
    _________個。

    參考答案是:1,2

    5、設(shè)一棵m叉樹的結(jié)點(diǎn)數(shù)為n,用多重鏈表表示其存儲結(jié)構(gòu),則該樹中有_________個空指針域。

    參考答案是:n(m-1)+1

    6、設(shè)指針變量p指向單鏈表中結(jié)點(diǎn)A,則刪除結(jié)點(diǎn)A的語句序列為: q=p->next;p->data=q->data;p->next=___________;feee(q);

    參考答案是:q->next

    7、數(shù)據(jù)結(jié)構(gòu)從邏輯上劃分為三種基本類型:___________、__________和___________。

    參考答案是:線性結(jié)構(gòu),樹型結(jié)構(gòu),圖型結(jié)構(gòu)

    8、設(shè)無向圖G中有n個頂點(diǎn)e條邊,則用鄰接矩陣作為圖的存儲結(jié)構(gòu)進(jìn)行深度優(yōu)先或廣度優(yōu)先遍歷時的時間復(fù)雜度為_________;
    用鄰接表作為圖的存儲結(jié)構(gòu)進(jìn)行深度優(yōu)先或廣度優(yōu)先遍歷的時間復(fù)雜度為_________。

    參考答案是:O(n2), O(n+e)

    9、設(shè)散列表的長度為8,散列函數(shù)H(k)=k % 7,用線性探測法解決沖突,則根據(jù)一組初始關(guān)鍵字序列(8,15,16,22,30,32)構(gòu)
    造出的散列表的平均查找長度是________。

    參考答案是:8/3

    10、設(shè)一組初始關(guān)鍵字序列為(38,65,97,76,13,27,10),則第3趟冒泡排序結(jié)束后的結(jié)果為_____________________。

    參考答案是:(38,13,27,10,65,76,97)

    11、設(shè)一組初始關(guān)鍵字序列為(38,65,97,76,13,27,10),則第3趟簡單選擇排序后的結(jié)果為______________________。

    參考答案是:(10,13,27,76,65,97,38)

    12、設(shè)有向圖G中的有向邊的集合E={<1,2>,<2,3>,<1,4>,<4,5>,<5,3>,<4,6>,<6,5>},則該圖的一個拓?fù)湫蛄袨?br style="line-height:1.5em;" />_________________________。

    參考答案是:124653

    13、下面程序段的功能是建立二叉樹的算法,請在下劃線處填上正確的內(nèi)容。
    typedef struct node
    {
    ???? int data;
    ???? struct node ?*lchild;
    ???? ________________;
    }bitree;
    void createbitree(bitree *&bt)
    {
    ???? scanf(“%c”,&ch);
    ???? if(ch=='#')?
    ???????? ___________;
    ???? else
    ???? {?
    ???????? bt=(bitree*)malloc(sizeof(bitree));?
    ???????? bt->data=ch;
    ???????? ________;
    ???????? createbitree(bt->rchild);
    ???? }
    }

    參考答案是:struct node *rchild,bt=0,createbitree(bt->lchild)

    14、下面程序段的功能是利用從尾部插入的方法建立單鏈表的算法,請在下劃線處填上正確的內(nèi)容。
    typedef struct node?
    {
    ???????? int data;?
    ???????? struct node *next;
    } lklist;?
    void lklistcreate(_____________ *&head )
    {?
    ????? for (i=1;i<=n;i++)
    ???? {?
    ???????? p=(lklist *)malloc(sizeof(lklist));
    ???????? scanf(“%d”,&(p->data));
    ???????? p->next=0;
    ???????? if(i==1)
    ???????????? head=q=p;
    ???????? else?
    ???????? {
    ???????????? q->next=p;
    ???????????? ____________;
    ???????? }
    ???? }?
    }

    參考答案是:lklist,q=p

    三、算法設(shè)計題

  • 1、設(shè)計在鏈?zhǔn)酱鎯Y(jié)構(gòu)上合并排序的算法。

  • 參考答案是: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; }

    2、設(shè)計在二叉排序樹上查找結(jié)點(diǎn)X的算法。

    參考答案是:bitree?*bstsearch1(bitree?*t,?int?key) {bitree?*p=t;while(p!=0)?if?(p->key==key)?return(p);else?if(p->key>key)p=p->lchild;?else?p=p->rchild;return(0); }

    3、設(shè)關(guān)鍵字序列(k1,k2,…,kn-1)是堆,設(shè)計算法將關(guān)鍵字序列(k1,k2,…,kn-1,x)調(diào)整為堆。

    參考答案是:void?adjustheap(int?r[?],int?n) {int?j=n,i=j/2,temp=r[j-1];while(i>=1)?if(temp>=r[i-1])break;?else{r[j-1]=r[i-1];?j=i;i=i/2;}r[j-1]=temp; }


    來源:我是碼農(nóng),轉(zhuǎn)載請保留出處和鏈接!

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

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

    總結(jié)

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

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。