亚洲国产综合网站|精品国产自在免费观看|日本免费精品一区二区三区|亚洲一区在线日韩在线尤物

<blockquote id="2t14e"></blockquote>
<ul id="2t14e"></ul>
  • <blockquote id="2t14e"></blockquote>

    1. 算法與數(shù)據(jù)結(jié)構(gòu)試題及答案

      時(shí)間:2017-04-20 08:40:08 算法與數(shù)據(jù)結(jié)構(gòu) 我要投稿

      算法與數(shù)據(jù)結(jié)構(gòu)試題及答案

        算法與數(shù)據(jù)結(jié)構(gòu)詳細(xì)介紹了常用數(shù)據(jù)結(jié)構(gòu)和算法的基本概念及其不同的實(shí)現(xiàn)方法,對(duì)各種數(shù)據(jù)結(jié)構(gòu),討論了在不同存儲(chǔ)結(jié)構(gòu)上實(shí)現(xiàn)線性和非線性結(jié)構(gòu)的不同運(yùn)算,并對(duì)算法設(shè)計(jì)的方法和技巧進(jìn)行了介紹。以下是由陽(yáng)光網(wǎng)小編整理關(guān)于算法與數(shù)據(jù)結(jié)構(gòu)試題的內(nèi)容,希望大家喜歡!

      算法與數(shù)據(jù)結(jié)構(gòu)試題及答案

        算法與數(shù)據(jù)結(jié)構(gòu)試題及答案(一)

        算法分析題 (每小題6分,共18分)

        1.設(shè)字符串類String具有下列操作:

        int Length()const; //計(jì)算字符串的長(zhǎng)度

        chargetData(k); //提取字符串第k個(gè)字符的值

        若字符串Tar的值為“ababcabcacbab“,的值為‘abcac”時(shí),

        (1)給出下面算法執(zhí)行后返回的結(jié)果,

        (2)給出下面。算法的功能。

        include "String, h"

        int unknown(String& Tar, strlng& Pat) coast

        {

        for (int i<O; i<=Tar. LengthO-Pat. Length(); i++) {

        iht j=O;

        while (j<Pat. Length())

        if (Tar. getOata(i+j) ==Pat. getData(j)) j+ +

        else break;

        if (j==Pat. Length()) return i;

        return –1;

        }

        返回結(jié)果:

        算法功能:

        2。已知二叉樹中的結(jié)點(diǎn)類型BinTrceNode定義為:

        struct BinTreeNode {ElemType data; BinTreeNode * left, * right; }

        其中data為結(jié)點(diǎn)值域,left和right分別為指向左、右子女結(jié)點(diǎn)的指針域.下面函數(shù)的功能是返回二又樹BT中值為X的結(jié)點(diǎn)所在的層號(hào).根據(jù)題意按標(biāo)號(hào)把合適的內(nèi)容填寫到算法后面相應(yīng)標(biāo)號(hào)的位置.

        int NodeLevel(BinTreeNode * BT, ElemType X)

        if (BT==NULL) return -- 1; //空樹的`層號(hào)為一1

        else if (BT->data==X) return 0; //根結(jié)點(diǎn)的層號(hào)為o

        //向于樹中查找X結(jié)點(diǎn)

        else {

        im cl =NodeLevel(BT->left, X);

        if (cl>=0) (1)

        iht e2= (2) ;

        if ( (3) ) return c2+1;

        //若樹中不存在K結(jié)點(diǎn)則 返回一l

        else return -1

        }

        }

        (1)

        (2)

        (3)

        3.假定一個(gè)有向無(wú)權(quán)圖采用鄰接矩陣存儲(chǔ),請(qǐng)指出F面算法的功能。

        Template<class Type>

        void Graph<Type>::unknown(int i)

        {

        int d,j;

        d=0;

        for (j=0; j<CurremNodes; j++){ //CurremNodes為田中的頂點(diǎn)效

        if (Edge[i][j]) {d++ ; Edge[i][j]=0; }

        if (Edge[j][i]) {d+ +; Edge[j][i]=0; }

        }

        CurrentEdges-=d; //CurremEdges //為圖中的邊數(shù)

        }

        算法功能:

        答案

        算法分析題(每小題6分,共18分)

        1

        返回結(jié)果,5

        算法功能:字符串的模式匹配算法.

        2.

        (1)returncl+l

        (2)NodeLevel(BT一>,right,X)

        (3)<c2>=0)

        3,從有向無(wú)權(quán)圖中刪除所有與頂點(diǎn)i相連的邊,包括出邊和人邊。

        算法與數(shù)據(jù)結(jié)構(gòu)試題及答案(二)

        一、單選題(每題 2 分,共20分)

        1. 棧和隊(duì)列的共同特點(diǎn)是( )。

        A.只允許在端點(diǎn)處插入和刪除元素

        B.都是先進(jìn)后出

        C.都是先進(jìn)先出

        D.沒有共同點(diǎn)

        2. 用鏈接方式存儲(chǔ)的隊(duì)列,在進(jìn)行插入運(yùn)算時(shí)( ).

        A. 僅修改頭指針 B. 頭、尾指針都要修改

        C. 僅修改尾指針 D.頭、尾指針可能都要修改

        3. 以下數(shù)據(jù)結(jié)構(gòu)中哪一個(gè)是非線性結(jié)構(gòu)( )

        A. 隊(duì)列 B. 棧 C. 線性表 D. 二叉樹

        4. 設(shè)有一個(gè)二維數(shù)組A[m][n],假設(shè)A[0][0]存放位置在644(10),A[2][2]存放位置在

        676(10),每個(gè)元素占一個(gè)空間,問A[3][3](10)存放在什么位置腳注(10)表示用10進(jìn)制表示。

        A.688 B.678 C.692 D.696

        5. 樹最適合用來(lái)表示( )。

        A.有序數(shù)據(jù)元素 B.無(wú)序數(shù)據(jù)元素

        C.元素之間具有分支層次關(guān)系的數(shù)據(jù) D.元素之間無(wú)聯(lián)系的數(shù)據(jù)

        6. 二叉樹的第k層的結(jié)點(diǎn)數(shù)最多為( ).

        kk-1 A.2-1 B.2K+1 C.2K-1 D. 2

        7. 若有18個(gè)元素的有序表存放在一維數(shù)組A[19]中,第一個(gè)元素放A[1]中,現(xiàn)進(jìn)行二

        分查找,則查找A〔3〕的比較序列的下標(biāo)依次為( )

        A. 1,2,3 B. 9,5,2,3

        C. 9,5,3 D. 9,4,2,3

        8. 對(duì)n個(gè)記錄的文件進(jìn)行快速排序,所需要的輔助存儲(chǔ)空間大致為

        A. O(1) B. O(n) C. O(1og2n) D. O(n2)

        9. 對(duì)于線性表(7,34,55,25,64,46,20,10)進(jìn)行散列存儲(chǔ)時(shí),若選用H(K)

        =K %9作為散列函數(shù),則散列地址為1的元素有( )個(gè),

        A.1 B.2 C.3 D.4

        10. 設(shè)有6個(gè)結(jié)點(diǎn)的無(wú)向圖,該圖至少應(yīng)有( )條邊才能確保是一個(gè)連通圖。

        A.5 B.6 C.7 D.8

        二、填空題(每空1分,共26分)

        1. 通常從四個(gè)方面評(píng)價(jià)算法的質(zhì)量:_________、_________、_________和_________。

        2. 一個(gè)算法的時(shí)間復(fù)雜度為(n3+n2log2n+14n)/n2,其數(shù)量級(jí)表示為________。

        3. 假定一棵樹的廣義表表示為A(C,D(E,F(xiàn),G),H(I,J)),則樹中所含的結(jié)點(diǎn)數(shù)

        為__________個(gè),樹的深度為___________,樹的度為_________。

        4. 后綴算式9 2 3 +- 10 2 / -的值為__________。中綴算式(3+4X)-2Y/3對(duì)應(yīng)的后綴算式

        為_______________________________。

        5. 若用鏈表存儲(chǔ)一棵二叉樹時(shí),每個(gè)結(jié)點(diǎn)除數(shù)據(jù)域外,還有指向左孩子和右孩子的兩個(gè)指

        針。在這種存儲(chǔ)結(jié)構(gòu)中,n個(gè)結(jié)點(diǎn)的二叉樹共有________個(gè)指針域,其中有________個(gè)指針域是存放了地址,有________________個(gè)指針是空指針。

        6. 對(duì)于一個(gè)具有n個(gè)頂點(diǎn)和e條邊的有向圖和無(wú)向圖,在其對(duì)應(yīng)的鄰接表中,所含邊結(jié)點(diǎn)

        分別有_______個(gè)和________個(gè)。

        7. AOV網(wǎng)是一種___________________的圖。

        8. 在一個(gè)具有n個(gè)頂點(diǎn)的無(wú)向完全圖中,包含有________條邊,在一個(gè)具有n個(gè)頂點(diǎn)的有

        向完全圖中,包含有________條邊。

        9. 假定一個(gè)線性表為(12,23,74,55,63,40),若按Key % 4條件進(jìn)行劃分,使得同一余數(shù)的元

        素成為一個(gè)子表,則得到的四個(gè)子表分別為____________________________、___________________、_______________________和__________________________。

        10. 向一棵B_樹插入元素的過程中,若最終引起樹根結(jié)點(diǎn)的分裂,則新樹比原樹的高度

        ___________。

        11. 在堆排序的過程中,對(duì)任一分支結(jié)點(diǎn)進(jìn)行篩運(yùn)算的時(shí)間復(fù)雜度為________,整個(gè)堆排序

        過程的時(shí)間復(fù)雜度為________。

        12. 在快速排序、堆排序、歸并排序中,_________排序是穩(wěn)定的。

        三、計(jì)算題(每題 6 分,共24分)

        1. 在如下數(shù)組A中鏈接存儲(chǔ)了一個(gè)線性表,表頭指針為A [0].next,試寫出該線性表。

        data next 2.

        3. 已知一個(gè)圖的頂點(diǎn)集V和邊集E分別為:V={1,2,3,4,5,6,7};

        E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15,

        (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25};

        用克魯斯卡爾算法得到最小生成樹,試寫出在最小生成樹中依次得到的各條邊。

        4. 畫出向小根堆中加入數(shù)據(jù)4, 2, 5, 8, 3時(shí),每加入一個(gè)數(shù)據(jù)后堆的變化。

        數(shù)據(jù)結(jié)構(gòu)試卷(一)參考答案

        一、選擇題(每題2分,共20分)

        1.A 2.D 3.D 4.C 5.C 6.D 7.D 8.C 9.D 10.A

        二、填空題(每空1分,共26分)

        1. 正確性 易讀性 強(qiáng)壯性 高效率

        2. O(n)

        3. 9 3 3

        4. -1 3 4 X * + 2 Y * 3 / -

        5. 2n n-1 n+1

        6. e 2e

        7. 有向無(wú)回路

        8. n(n-1)/2 n(n-1)

        9. (12,40) ( ) (74) (23,55,63)

        10.增加1

        11.O(log2n) O(nlog2n)

        12.歸并

        三、計(jì)算題(每題6分,共24分)

        1. 線性表為:(78,50,40,60,34,90)

        0111

        02. 鄰接矩陣:11100101101101011110

        鄰接表如圖11所示:

        圖11

        3. 用克魯斯卡爾算法得到的最小生成樹為:

        (1,2)3, (4,6)4, (1,3)5, (1,4)8, (2,5)10, (4,7)20

        4. 見圖12

        26


      【算法與數(shù)據(jù)結(jié)構(gòu)試題及答案】相關(guān)文章:

      1.算法與數(shù)據(jù)結(jié)構(gòu)模擬試題及答案

      2.《算法數(shù)據(jù)結(jié)構(gòu)》期末試題及答案

      3.2017年算法與數(shù)據(jù)結(jié)構(gòu)試題及參考答案

      4.2017年算法與數(shù)據(jù)結(jié)構(gòu)模擬試題及答案

      5.算法與數(shù)據(jù)結(jié)構(gòu)模擬試題及參考答案

      6.大學(xué)《算法數(shù)據(jù)結(jié)構(gòu)》復(fù)習(xí)試題及答案

      7.大學(xué)《算法數(shù)據(jù)結(jié)構(gòu)》試題判斷題及答案

      8.數(shù)據(jù)結(jié)構(gòu)試題及答案