2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩71頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  全國(guó)2001年10月自考數(shù)據(jù)結(jié)構(gòu)試題</p><p>  課程代碼:02331</p><p>  第一部分 選擇題(30分)</p><p>  單項(xiàng)選擇題(本大題共15小題,每小題2分,共30分)在每小題列出的四個(gè)選項(xiàng)中只有一個(gè)選項(xiàng)是符合題目要求的,請(qǐng)將正確選項(xiàng)前的字母填在題后的括號(hào)內(nèi)。</p><p>  1.算

2、法指的是( )</p><p>  A.計(jì)算機(jī)程序 B.解決問題的計(jì)算方法</p><p>  C.排序算法 D.解決問題的有限運(yùn)算序列</p><p>  2.線性表采用鏈?zhǔn)酱鎯?chǔ)時(shí),結(jié)點(diǎn)的存儲(chǔ)地址( )</p><p><b>  A.必須是不連續(xù)

3、的</b></p><p><b>  B.連續(xù)與否均可</b></p><p><b>  C.必須是連續(xù)的</b></p><p>  D.和頭結(jié)點(diǎn)的存儲(chǔ)地址相連續(xù)</p><p>  3.將長(zhǎng)度為n的單鏈表鏈接在長(zhǎng)度為m的單鏈表之后的算法的時(shí)間復(fù)雜度為( )</p>

4、<p>  A.O(1) B.O(n) C.O(m) D.O(m+n)</p><p>  4.由兩個(gè)棧共享一個(gè)向量空間的好處是:( )</p><p>  A.減少存取時(shí)間,降低下溢發(fā)生的機(jī)率</p><p>  B.節(jié)省存儲(chǔ)空間,降低上溢發(fā)生的機(jī)率</p><p>  C.減少存取時(shí)間,降低上

5、溢發(fā)生的機(jī)率</p><p>  D.節(jié)省存儲(chǔ)空間,降低下溢發(fā)生的機(jī)率</p><p>  5.設(shè)數(shù)組data[m]作為循環(huán)隊(duì)列SQ的存儲(chǔ)空間,front為隊(duì)頭指針,rear為隊(duì)尾指針,則執(zhí)行出隊(duì)操作后其頭指針front值為( )</p><p>  A.front=front+1 B.front=(front+1)%(m-1)&

6、lt;/p><p>  C.front=(front-1)%m D.front=(front+1)%m</p><p>  6.如下陳述中正確的是( )</p><p>  A.串是一種特殊的線性表 B.串的長(zhǎng)度必須大于零</p><p>  C.串中元素只能是字母 D.空串就是空白串

7、</p><p>  7.若目標(biāo)串的長(zhǎng)度為n,模式串的長(zhǎng)度為[n/3],則執(zhí)行模式匹配算法時(shí),在最壞情況下的時(shí)間復(fù)雜度是( )</p><p>  A.O() B.O(n) C.O(n2) D.O(n3)</p><p>  8.一個(gè)非空廣義表的表頭( )</p><p>  A.不可能是子表

8、 B.只能是子表</p><p>  C.只能是原子 D.可以是子表或原子</p><p>  9.假設(shè)以帶行表的三元組表表示稀疏矩陣,則和下列行表</p><p>  對(duì)應(yīng)的稀疏矩陣是( )</p><p>  10.在一棵度為3的樹中,度為3的結(jié)點(diǎn)個(gè)數(shù)為2,度為2 的結(jié)點(diǎn)個(gè)數(shù)為

9、1,則度為0的結(jié)點(diǎn)個(gè)數(shù)為( )</p><p>  A.4 B.5 C.6 D.7</p><p>  11.在含n個(gè)頂點(diǎn)和e條邊的無(wú)向圖的鄰接矩陣中,零元素的個(gè)數(shù)為( )</p><p>  A.e B.2e C.n2-e D.n2-2e&l

10、t;/p><p>  12.假設(shè)一個(gè)有n個(gè)頂點(diǎn)和e條弧的有向圖用鄰接表表示,則刪除與某個(gè)頂點(diǎn)vi相關(guān)的所有弧的時(shí)間復(fù)雜度是( )</p><p>  A.O(n) B.O(e) C.O(n+e) D.O(n*e)</p><p>  13.用某種排序方法對(duì)關(guān)鍵字序列(25,84,21,47,15,27,68,35,20)進(jìn)行排

11、序時(shí),序列的變化情況如下:</p><p>  20,15,21,25,47,27,68,35,84</p><p>  15,20,21,25,35,27,47,68,84</p><p>  15,20,21,25,27,35,47,68,84</p><p>  則所采用的排序方法是( )</p><p> 

12、 A.選擇排序 B.希爾排序 C.歸并排序 D.快速排序</p><p>  14.適于對(duì)動(dòng)態(tài)查找表進(jìn)行高效率查找的組織結(jié)構(gòu)是( )</p><p>  A.有序表 B.分塊有序表 C.三叉排序樹 D.線性鏈表</p><p>  15.不定長(zhǎng)文件是指( )</p><p>  A.文件的長(zhǎng)度不固定

13、 B.記錄的長(zhǎng)度不固定</p><p>  C.字段的長(zhǎng)度不固定 D.關(guān)鍵字項(xiàng)的長(zhǎng)度不固定</p><p>  第二部分 非選擇題(共70分)</p><p>  二、填空題(本大題共10小題,每小題2分,若有兩個(gè)空格,每個(gè)空格1分,共20分)不寫解答過程,將正確的答案寫在每小題的空格內(nèi)。錯(cuò)填或不填均無(wú)分。</p&

14、gt;<p>  16.?dāng)?shù)據(jù)的邏輯結(jié)構(gòu)是從邏輯關(guān)系上描述數(shù)據(jù),它與數(shù)據(jù)的 無(wú)關(guān),是獨(dú)立于計(jì)算機(jī)的。</p><p>  17.在一個(gè)帶頭結(jié)點(diǎn)的單循環(huán)鏈表中,p指向尾結(jié)點(diǎn)的直接前驅(qū),則指向頭結(jié)點(diǎn)的指針head可用p表示為head= 。</p><p>  18.棧頂?shù)奈恢檬请S著 操作而變化的。</p>&l

15、t;p>  19.在串S=“structure”中,以t為首字符的子串有 個(gè)。</p><p>  20.假設(shè)一個(gè)9階的上三角矩陣A按列優(yōu)先順序壓縮存儲(chǔ)在一維數(shù)組B中,其中B[0]存儲(chǔ)矩陣中第1個(gè)元素a1,1,則B[31]中存放的元素是 。</p><p>  21.已知一棵完全二叉樹中共有768結(jié)點(diǎn),則該樹中共有 個(gè)葉子結(jié)點(diǎn)。

16、 </p><p>  22.已知一個(gè)圖的廣度優(yōu)先生成樹如右圖所示,則與此相 </p><p>  應(yīng)的廣度優(yōu)先遍歷序列為 。 </p><p>  23.在單鏈表上難以實(shí)現(xiàn)的排序方法有

17、和 。 </p><p>  24.在有序表(12,24,36,48,60,72,84)中二分查找關(guān)鍵字72時(shí)所需進(jìn)行的關(guān)鍵字比較次數(shù)為 。 </p><p>  25.多重表文件和倒排文件都?xì)w屬于

18、 文件。 </p><p>  三、解答題(本大題共4小題,每小題5分,共20分)</p><p>  26.畫出下列廣義表的共享結(jié)構(gòu)圖形表示</p><p>  P=(((z),(x,y)),((x,y),x),(z))</p><p>  27.請(qǐng)畫出與下列二叉樹對(duì)應(yīng)的森林。</p>

19、;<p>  28.已知一個(gè)無(wú)向圖的頂點(diǎn)集為{a, b, c, d, e} ,其鄰接矩陣如下所示</p><p><b>  a</b></p><p><b>  b </b></p><p><b>  c</b></p><p><b>  d&

20、lt;/b></p><p><b>  e</b></p><p>  (1)畫出該圖的圖形;</p><p>  (2)根據(jù)鄰接矩陣從頂點(diǎn)a出發(fā)進(jìn)行深度優(yōu)先遍歷和廣度優(yōu)先遍歷,寫出相應(yīng)的遍歷序列。</p><p>  29.已知一個(gè)散列表如下圖所示:</p><p>  0 1

21、 2 3 4 5 6 7 8 9 10 11 12 </p><p>  其散列函數(shù)為h(key)=key%13, 處理沖突的方法為雙重散列法,探查序列為:</p><p>  hi=(h(key)+*h1(key))%m =0,1,…,m-1</p><p><b>  其中</b>&l

22、t;/p><p>  h1(key)=key%11+1</p><p><b>  回答下列問題:</b></p><p>  (1)對(duì)表中關(guān)鍵字35,20,33和48進(jìn)行查找時(shí),所需進(jìn)行的比較次數(shù)各為多少?</p><p> ?。?)該散列表在等概率查找時(shí)查找成功的平均查找長(zhǎng)度為多少?</p><p&g

23、t;  四、算法閱讀題(本大題共4小題,每小題5分,共20分)</p><p>  30.下列算法的功能是比較兩個(gè)鏈串的大小,其返回值為:</p><p>  comstr(s1,s2)= </p><p>  請(qǐng)?jiān)诳瞻滋幪钊脒m當(dāng)?shù)膬?nèi)容。</p><p>  int comstr(LinkString s1,LinkString s2)

24、 </p><p>  {//s1和s2為兩個(gè)鏈串的頭指針</p><p>  while(s1&&s2){</p><p>  if(s1->date<s2->date)return-1;</p><p>  if(s1->date>s2->date)return1;</p>

25、<p><b> ?、?;</b></p><p><b> ?、?;</b></p><p><b>  } </b></p><p>  if( ③ )return-1;</p><p>  if( ④ )return1;<

26、/p><p><b> ?、?;</b></p><p><b>  }</b></p><p><b> ?、?lt;/b></p><p><b> ?、?lt;/b></p><p><b> ?、?lt;/b></

27、p><p><b> ?、?lt;/b></p><p><b> ?、?lt;/b></p><p>  31.閱讀下面的算法</p><p>  LinkList mynote(LinkList L)</p><p>  {//L是不帶頭結(jié)點(diǎn)的單鏈表的頭指針</p><

28、;p>  if(L&&L->next){</p><p>  q=L;L=L->next;p=L;</p><p>  S1: while(p->next) p=p->next;</p><p>  S2: p->next=q;q->next=NULL;</p><

29、p><b>  }</b></p><p>  return L;</p><p><b>  }</b></p><p><b>  請(qǐng)回答下列問題:</b></p><p>  (1)說(shuō)明語(yǔ)句S1的功能;</p><p>  (2)說(shuō)明語(yǔ)句組

30、S2的功能;</p><p> ?。?)設(shè)鏈表表示的線性表為(a1,a2, …,an),寫出算法執(zhí)行后的返回值所表示的線性表。</p><p>  32.假設(shè)兩個(gè)隊(duì)列共享一個(gè)循環(huán)向量空間(參見右下圖),</p><p>  其類型Queue2定義如下:</p><p>  typedef struct{</p><p>

31、;  DateType data[MaxSize];</p><p>  int front[2],rear[2];</p><p><b>  }Queue2;</b></p><p>  對(duì)于i=0或1,front[i]和rear[i]分別為第i個(gè)隊(duì)列的頭指針和尾指針。請(qǐng)對(duì)以下算法填空,實(shí)現(xiàn)第i個(gè)隊(duì)列的入隊(duì)操作。</p>&l

32、t;p>  int EnQueue (Queue2*Q,int i,DateType x)</p><p>  {//若第 i個(gè)隊(duì)列不滿,則元素x入隊(duì)列,并返回1;否則返回0</p><p>  if(i<0||i>1)return 0;</p><p>  if(Q->rear[i]==Q->front[ ① ]return

33、0;</p><p>  Q->data[ ② ]=x;</p><p>  Q->rear[i]=[ ③ ];</p><p><b>  return1;</b></p><p><b>  } </b></p><p><

34、b> ?、?lt;/b></p><p><b> ?、?lt;/b></p><p><b> ?、?lt;/b></p><p>  33.已知二叉樹的存儲(chǔ)結(jié)構(gòu)為二叉鏈表,閱讀下面算法。</p><p>  typedef struct node {</p><p>  

35、DateType data;</p><p>  Struct node * next;</p><p>  }ListNode;</p><p>  typedef ListNode * LinkList ;</p><p>  LinkList Leafhead=NULL;</p><p>  Void Inord

36、er (BinTree T)</p><p><b>  {</b></p><p>  LinkList s;</p><p><b>  If(T){</b></p><p>  Inorder(T->lchild);</p><p>  If ((!T->l

37、child)&&(!T->rchild)){</p><p>  s=(ListNode*)malloc(sizeof(ListNode));</p><p>  s->data=T->data;</p><p>  s->next=Leafhead;</p><p>  Leafhead=s;<

38、/p><p><b>  }</b></p><p>  Inorder(T->rchild);</p><p><b>  }</b></p><p><b>  }</b></p><p>  對(duì)于如下所示的二叉樹</p><p

39、> ?。?)畫出執(zhí)行上述算法后所建立的結(jié)構(gòu);</p><p> ?。?)說(shuō)明該算法的功能。</p><p>  五、算法設(shè)計(jì)題(本題共10分)</p><p>  34.閱讀下列函數(shù)arrange()</p><p>  int arrange(int a[],int 1,int h,int x)</p><p>

40、;  {//1和h分別為數(shù)據(jù)區(qū)的下界和上界</p><p>  int i,j,t;</p><p><b>  i=1;j=h;</b></p><p>  while(i<j){</p><p>  while(i<j && a[j]>=x)j--;</p><p

41、>  while(i<j && a[j]>=x)i++;</p><p><b>  if(i<j)</b></p><p>  { t=a[j];a[j]=a[i];a[i]=t;}</p><p><b>  }</b></p><p>  if(a[i

42、]<x) return i;</p><p>  else return i-1;</p><p><b>  }</b></p><p> ?。?)寫出該函數(shù)的功能;</p><p> ?。?)寫一個(gè)調(diào)用上述函數(shù)實(shí)現(xiàn)下列功能的算法:對(duì)一整型數(shù)組b[n]中的元素進(jìn)行重新排列,將所有負(fù)數(shù)均調(diào)整到數(shù)組的低下標(biāo)端,將

43、所有正數(shù)均調(diào)整到數(shù)組的高下標(biāo)端,若有零值,則置于兩者之間,并返回?cái)?shù)組中零元素的個(gè)數(shù)。</p><p>  全國(guó)2001年10月自考數(shù)據(jù)結(jié)構(gòu)試題參考答案</p><p>  課程代碼:02331</p><p>  單項(xiàng)選擇題(本大題共15小題,每小題2分,共30分)</p><p>  1.D2.B3.C4.B5.D6.A

44、7.C8,D9,A10.C11.D12.C13.D14.C15.B</p><p>  二、填空題(本大題共10小題,每小題2分,共20分)</p><p>  16.存儲(chǔ)(或存儲(chǔ)結(jié)構(gòu))17.p->next->next18.進(jìn)棧和退棧19.1220.a(chǎn)4,821.38422.a(chǎn)befcdg</p>

45、<p>  23.快速排序、堆排序、希爾排序</p><p>  24.225.多關(guān)鍵字</p><p>  三、解答題(本大題共4小題,每小題5分,共20分)</p><p><b>  26.</b></p><p>  圖1 圖2</p><p>

46、<b>  27.</b></p><p>  28.該圖的圖形為: </p><p>  深度優(yōu)先遍歷序列為:abdce</p><p>  廣度優(yōu)先遍歷序列為:abedc</p><p>  29.(1)對(duì)關(guān)鍵字35、20、33和48進(jìn)行查找的比較次數(shù)為3、2、1、1;<

47、;/p><p><b> ?。ǎ玻┢骄檎议L(zhǎng)度</b></p><p>  四、算法閱讀題(本大題共4小題,每小題5分,共20分)</p><p>  30. ①S1=S1->next</p><p> ?、趕2=s2->next</p><p> ?、踫2(或s2!=NULL或s2&a

48、mp;&!s1)</p><p>  ④s1(或s1!=NULL或s1&&!s2)</p><p><b> ?、輗eturn 0</b></p><p>  31.(1)查詢鏈表的尾結(jié)點(diǎn)</p><p> ?。?)將第一個(gè)結(jié)點(diǎn)鏈接到鏈表的尾部,作為新的尾結(jié)點(diǎn)</p><p&g

49、t;  (3)返回的線性表為(a2,a3,…,an,a1)</p><p>  32. ①(i+1)%2(或1-i)</p><p>  ②Q->rear[i]</p><p> ?、?Q->rear[i]+)%Maxsize</p><p> ?。?)中序遍歷二叉樹,按遍歷序列中葉子結(jié)點(diǎn)數(shù)據(jù)域的值構(gòu)建一個(gè)以Leafhead為頭指

50、針的逆序單鏈表(或按二叉樹中葉子結(jié)點(diǎn)數(shù)據(jù)自右至左鏈接成一個(gè)鏈表)。</p><p>  五、算法設(shè)計(jì)題(本題共10分)</p><p>  34.(1)該函數(shù)的功能是:調(diào)整整數(shù)數(shù)組a[]中的元素并返回分界值i,使所有<x的元素均落在a[1..i]上,使所有≥x的元素均落在a[i+1..h]上。</p><p> ?。?)int f(int b[],int n)

51、 或 int f(int b[],int n)</p><p>  { {</p><p>  int p,q; int p,q;</p><p>  p=arrange(b,0,n-1,0); p=arrange(b,0,n-1,1);</p><p>

52、;  q= arrange(b,p+1,n-1,1); q= arrange(b,0,p,0);</p><p>  return q-p; return p-q;</p><p>  } }</p><p>  浙江省2002年1月高等教育自學(xué)考試</p><p>&l

53、t;b>  數(shù)據(jù)結(jié)構(gòu)試題</b></p><p>  課程代碼:02331</p><p>  一、單項(xiàng)選擇題(在每小題的四個(gè)備選答案中,選出一個(gè)正確答案,并將正確答案的序號(hào)填在題干的括號(hào)內(nèi)。每小題2分,共38分)</p><p>  1.某二叉樹的先序序列和后序序列正好相同,則該二叉樹一定是( )的二叉樹。</p><

54、p>  A.空或只有一個(gè)結(jié)點(diǎn)B.高度等于其結(jié)點(diǎn)數(shù)</p><p>  C.任一結(jié)點(diǎn)無(wú)左孩子D.任一結(jié)點(diǎn)無(wú)右孩子</p><p>  2.下列排序算法中,時(shí)間復(fù)雜度不受數(shù)據(jù)初始狀態(tài)影響,恒為O(log2n)的是( )</p><p>  A.堆排序B.冒泡排序</p><p>  C.直接選擇排序

55、D.快速排序</p><p>  3.下列排序算法中,( )算法可能會(huì)出現(xiàn)下面情況:初始數(shù)據(jù)有序時(shí),花費(fèi)的時(shí)間反而最多。</p><p>  A.堆排序B.冒泡排序</p><p>  C.快速排序D.SHELL排序</p><p>  4.一個(gè)棧的輸入序列為1 2 3 4 5,則下列序列中不可

56、能是棧的輸出序列的是( )</p><p>  A. 2 3 4 1 5B. 5 4 1 3 2</p><p>  C. 2 3 1 4 5D. 1 5 4 3 2</p><p>  5.設(shè)循環(huán)隊(duì)列中數(shù)組的下標(biāo)范圍是1~n,其頭尾指針分別為f和r,則其元素個(gè)數(shù)為( )</p><p>  A.

57、 r-fB. r-f+1</p><p>  C. (r-f) mod n+1D. (r-f+n) mod n</p><p>  6.若某鏈表最常用的操作是在最后一個(gè)結(jié)點(diǎn)之后插入一個(gè)結(jié)點(diǎn)和刪除最后一個(gè)結(jié)點(diǎn),則采用( )存儲(chǔ)方式最節(jié)省時(shí)間。</p><p>  A.單鏈表B.雙鏈表</p><p

58、>  C.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表D.單循環(huán)鏈表</p><p>  7.在有n個(gè)結(jié)點(diǎn)的二叉鏈表中,值為非空的鏈域的個(gè)數(shù)為( )</p><p>  A. n-1B. 2n-1</p><p>  C. n+1D. 2n+1</p><p>  8.一棵左右子樹均不空的二叉樹在先序線索化后,其

59、空指針域數(shù)為( )</p><p>  A. 0B. 1</p><p>  C. 2D.不確定</p><p>  9.數(shù)組A[5][6]的每個(gè)元素占5個(gè)單元,將其按行優(yōu)先次序存儲(chǔ)在起始地址為1000的連續(xù)的內(nèi)存單元中,則元素A[5,5]的地址為( )</p><p>  A. 1140

60、B. 1145</p><p>  C. 1120D. 1125</p><p>  10.求最短路徑的DIJKSTRA算法的時(shí)間復(fù)雜度為( )</p><p>  A. O(n)B. O(n+e)</p><p>  C. O(n2)D. O(n×e)</p>

61、<p>  11.對(duì)有18個(gè)元素的有序表作二分查找,則查找A[3]的比較序列的下標(biāo)依次為( )</p><p>  A. 1,2,3B. 9,5,2,3</p><p>  C. 9,5,3D. 9,4,2,3</p><p>  12.快速排序算法在最好情況下的時(shí)間復(fù)雜度為( )</p>&l

62、t;p>  A. O(n)B. O(nlog2n)</p><p>  C. O(n2)D. O(log2n)</p><p>  13.下列排序算法中,某一趟結(jié)束后未必能選出一個(gè)元素放在其最終位置上的是( )</p><p>  A.堆排序B.冒泡排序</p><p>  C.快速排序

63、D.直接插入排序</p><p>  14.二叉樹在線索化后,仍不能有效求解的問題是( )</p><p>  A.先序線索二叉樹中求先序后繼</p><p>  B.中序線索二叉樹中求中序后繼</p><p>  C.中序線索二叉樹中求中序前趨</p><p>  D.后序線索二叉樹中求后序后繼&

64、lt;/p><p>  15.DFS算法的時(shí)間復(fù)雜度為( )</p><p>  A. O(n)B. O(n3)</p><p>  C. O(n2)D. O(n+e)</p><p>  16.隊(duì)列操作的原則是( )</p><p>  A.先進(jìn)先出B.后進(jìn)先出<

65、/p><p>  C.只能進(jìn)行插入D.只能進(jìn)行刪除</p><p>  17.有64個(gè)結(jié)點(diǎn)的完全二叉樹的深度為( )(根的層次為1)。</p><p>  A. 8B. 7</p><p>  C. 6D. 5</p><p>  18.在平衡二叉樹中插入一個(gè)結(jié)點(diǎn)后造成了不平衡

66、,設(shè)最低的不平衡結(jié)點(diǎn)為A,并已知A的左孩子的平衡因子為-1,右孩子的平衡因子為0,則應(yīng)作( )型調(diào)整以使其平衡。</p><p>  A. LLB. LR</p><p>  C. RLD. RR</p><p>  19.數(shù)據(jù)表A中有10000個(gè)元素,如果僅要求求出其中最大的10個(gè)元素,則采用( )排序算法最節(jié)省時(shí)間。&

67、lt;/p><p>  A.堆排序B.希爾排序</p><p>  C.快速排序D.直接選擇排序</p><p>  二、判斷題(判斷下列各題,正確的在題后括號(hào)內(nèi)打“√”,錯(cuò)的打“×”。每小題1分,共10分)</p><p>  1.給出不同的輸入序列建造二叉排序樹,一定得到不同的二叉排序樹。( )<

68、;/p><p>  2.由于希爾排序的最后一趟與直接插入排序過程相同,因此前者一定比后者花費(fèi)的時(shí)間多。( )</p><p>  3.在對(duì)鏈隊(duì)列作出隊(duì)操作時(shí),不會(huì)改變front指針的值。( )</p><p>  4.若一個(gè)棧的輸入序列為123…n,其輸出序列的第一個(gè)元素為n,則其輸出序列的每個(gè)元素ai一定滿足ai=n-i+1(i=1,2...,n)(

69、 )</p><p>  5.二叉樹中的葉子結(jié)點(diǎn)就是二叉樹中沒有左右子樹的結(jié)點(diǎn)。( )</p><p>  6.一棵樹中的葉子結(jié)點(diǎn)數(shù)一定等于與其對(duì)應(yīng)的二叉樹中的葉子結(jié)點(diǎn)數(shù)。( )</p><p>  7.有向圖用鄰接矩陣表示后,頂點(diǎn)i的人度等于鄰接矩陣中第i列的元素個(gè)數(shù)。( )</p><p>  8.有向圖的鄰

70、接表和逆鄰接表中的結(jié)點(diǎn)數(shù)一定相同。( )</p><p>  9.刪除二叉排序樹中一個(gè)結(jié)點(diǎn),再重新插入上去,一定能得到原來(lái)的二叉排序樹。( )</p><p>  10.圖G的拓?fù)湫蛄形ㄒ?,則其弧數(shù)必為n-1(其中n為G的頂點(diǎn)數(shù))。( )</p><p>  三、填空題(每空2分,共20分)</p><p>  1.在

71、有n個(gè)葉子結(jié)點(diǎn)的哈夫曼樹中,總結(jié)點(diǎn)數(shù)是_______。</p><p>  2.一棵樹T采用二叉鏈表存儲(chǔ),如果樹T中某結(jié)點(diǎn)為葉子結(jié)點(diǎn),則在二叉鏈表BT中所對(duì)應(yīng)的結(jié)點(diǎn)一定_______。</p><p>  3.已知數(shù)組A[10][10]為對(duì)稱矩陣,其中每個(gè)元素占5個(gè)單元?,F(xiàn)將其下三角部分按行優(yōu)先次序存儲(chǔ)在起始地址為1000的連續(xù)的內(nèi)存單元中,則元素A[5,6]對(duì)應(yīng)的地址是_______。&

72、lt;/p><p>  4.在有n個(gè)結(jié)點(diǎn)的無(wú)向圖中,其邊數(shù)最多為_______。</p><p>  5.取出廣義表A=(x,(a,b,c,d))中原子x的函數(shù)是_______。</p><p>  6.對(duì)矩陣采用壓縮存儲(chǔ)是為了_______。</p><p>  7.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表L為空表的條件是_______。</p>&

73、lt;p>  8.在雙鏈表中,在指針P所指結(jié)點(diǎn)前面插入一個(gè)結(jié)點(diǎn)S∧時(shí)的語(yǔ)句序列是:</p><p>  S->next=P;S->prior=P->prior;P->prior=S;</p><p><b>  _______;</b></p><p>  9.對(duì)廣義表A=(x,((a,b),c,d))的運(yùn)算hea

74、d (head (tail (A)))的結(jié)果是______。</p><p>  10.判斷線索二叉樹中某結(jié)點(diǎn)指針P所指結(jié)點(diǎn)有左孩子的條件是_______。</p><p>  四、簡(jiǎn)答題(每小題5分,共15分)</p><p>  求出下圖的一棵最小生成樹。</p><p>  2.將下面順序表建成一個(gè)小頭堆。</p><

75、;p>  (70,12,20,31,1,5,44,66,61,200,30,80,150,4,28)</p><p>  3.已知一棵二叉樹的先序序列是ABCDEFGHIJK,中序序列是CDBGFEAHJIK,請(qǐng)構(gòu)造出該二叉樹。</p><p>  五、綜合應(yīng)用題(共17分)</p><p>  1.已知一樹的雙親表示法如下,其中各兄弟結(jié)點(diǎn)是依次出現(xiàn)的,畫出該

76、樹及對(duì)應(yīng)的二叉樹。(滿分7分)。</p><p>  2.計(jì)算二叉樹的深度的算法。(10分)</p><p>  浙江省2002年1月高等教育自學(xué)考試</p><p>  數(shù)據(jù)結(jié)構(gòu)試題參考答案</p><p>  課程代碼:02331</p><p>  一、單項(xiàng)選擇題(每小題2分,共38分)</p>&

77、lt;p>  1.A 2.B 3.C 4.B 5.D</p><p>  6.C 7.A 8.B 9.A 10.C</p><p>  11.D 12.B 13.D 14.D 15.C</p><p>  16.A

78、 17.B 18.A 19.C</p><p>  二、判斷題(每小題1分,共10分)</p><p>  1.√ 2.× 3√ 4.√ 5.×</p><p>  6.× 7.√ 8.× 9.× 10

79、.×</p><p>  三、填空題(每空2分,共20分)</p><p><b>  1. n-1</b></p><p><b>  2. 左右子樹空</b></p><p><b>  3. 1225</b></p><p>  4. n

80、(n-1)/2</p><p>  5. head(A)</p><p><b>  6. 節(jié)省空間</b></p><p>  7. L->next=L->prior 或 L->next=L</p><p>  8. S->prior->next=S</p><p&

81、gt;<b>  9. (a)</b></p><p>  10. P->ltag=1</p><p>  四、簡(jiǎn)答題(每小題5分,共15分)</p><p><b>  最小生成樹:</b></p><p><b>  2.小頭堆:</b></p><

82、;p>  1 12 4 31 30 5 20 66 61 200 70 80 150 44 28</p><p><b>  3.二叉樹:</b></p><p>  五、綜合應(yīng)用題(共17分)</p><p>  從森林轉(zhuǎn)換為二叉樹:(7分)</p><p>  2.計(jì)算二叉樹的深度的

83、算法:(10分)</p><p>  int depth(tree *T)</p><p><b>  {</b></p><p><b>  if(!T)</b></p><p><b>  return 0;</b></p><p><b>

84、;  else</b></p><p>  return 1+max(depth(T->Lchild),depth(->Rchild));</p><p><b>  }</b></p><p>  全國(guó)2003年10月高等教育自學(xué)考試</p><p><b>  數(shù)據(jù)結(jié)構(gòu)試題</

85、b></p><p>  課程代碼:02331</p><p>  一、單項(xiàng)選擇題(在每小題的四個(gè)備選答案中,選出一個(gè)正確答案,并將正確答案的序號(hào)填在題干的括號(hào)內(nèi)。每小題2分,共30分)</p><p>  1.計(jì)算機(jī)識(shí)別、存儲(chǔ)和加工處理的對(duì)象被統(tǒng)稱為( )</p><p>  A.數(shù)據(jù)

86、 B.數(shù)據(jù)元素</p><p>  C.數(shù)據(jù)結(jié)構(gòu) D.數(shù)據(jù)類型</p><p>  2.在具有n個(gè)結(jié)點(diǎn)的有序單鏈表中插入一個(gè)新結(jié)點(diǎn)并使鏈表仍然有序的時(shí)間復(fù)雜度是( )</p><p>  A.O(1) B.O(n)</p><

87、;p>  C.O(nlogn) D.O(n2)</p><p>  3.隊(duì)和棧的主要區(qū)別是( )</p><p>  A.邏輯結(jié)構(gòu)不同 B.存儲(chǔ)結(jié)構(gòu)不同</p><p>  C.所包含的運(yùn)算個(gè)數(shù)不同 D.限定插入和

88、刪除的位置不同</p><p>  4.鏈棧與順序棧相比,比較明顯的優(yōu)點(diǎn)是( )</p><p>  A.插入操作更加方便 B.刪除操作更加方便</p><p>  C.不會(huì)出現(xiàn)下溢的情況 D.不會(huì)出現(xiàn)上溢的情況</p><p>  5.采用兩類不同

89、存儲(chǔ)結(jié)構(gòu)的字符串可分別簡(jiǎn)稱為( )</p><p>  A.主串和子串 B.順序串和鏈串</p><p>  C.目標(biāo)串和模式串 D.變量串和常量串</p><p>  6.在目標(biāo)串T[0..n-1]=″xwxxyxy″中,對(duì)模式串P[0..m-1]=″xy

90、″進(jìn)行子串定位操作的結(jié)果是( )</p><p>  A.0 B.2</p><p>  C.3 D.5</p><p>  7.已知廣義表的表頭為a,表尾為(b,c),則此廣義表為( )</p><p>  A.(a,(b,c))

91、 B.(a,b,c)</p><p>  C.((a),b,c) D.((a,b,c))</p><p>  8.二維數(shù)組A按行優(yōu)先順序存儲(chǔ),其中每個(gè)元素占1個(gè)存儲(chǔ)單元。若A[1][1]的存儲(chǔ)地址為420,A[3][3]的存儲(chǔ)地址為446,則A[5][5]的存儲(chǔ)地址為( )</p&g

92、t;<p>  A.470 B.471</p><p>  C.472 D.473</p><p>  9.二叉樹中第5層上的結(jié)點(diǎn)個(gè)數(shù)最多為( )</p><p>  A.8 B.15</p>

93、<p>  C.16 D.32</p><p>  10.下列編碼中屬前綴碼的是( )</p><p>  A.{1,01,000,001} B.{1,01,011,010}</p><p>  C.{0,10,110,11}

94、 D.{0,1,00,11}</p><p>  11.如果某圖的鄰接矩陣是對(duì)角線元素均為零的上三角矩陣,則此圖是( )</p><p>  A.有向完全圖 B.連通圖</p><p>  C.強(qiáng)連通圖 D.有向無(wú)環(huán)圖</p>&

95、lt;p>  12.對(duì)n個(gè)關(guān)鍵字的序列進(jìn)行快速排序,平均情況下的空間復(fù)雜度為( )</p><p>  A.O(1) B.O(logn)</p><p>  C.O(n) D.O(n logn)</p><p>  13.對(duì)表長(zhǎng)為n的順序表進(jìn)行順序查找,在查找

96、概率相等的情況下,查找成功的平均查找長(zhǎng)度為( )</p><p>  A. B.</p><p>  C. D.n</p><p>  14.對(duì)于哈希函數(shù)H(key)=key%13,被稱為同義詞的關(guān)鍵字是( )</p><p>  A

97、.35和41 B.23和39</p><p>  C.15和44 D.25和51</p><p>  15.稠密索引是在索引表中( )</p><p>  A.為每個(gè)記錄建立一個(gè)索引項(xiàng) B.為每個(gè)頁(yè)塊建立一個(gè)索引項(xiàng)</p><

98、p>  C.為每組記錄建立一個(gè)索引項(xiàng) D.為每個(gè)字段建立一個(gè)索引項(xiàng)</p><p>  二、填空題(每小題2分,若有兩個(gè)空格,每個(gè)空格1分,共20分)</p><p>  16.當(dāng)問題的規(guī)模n趨向無(wú)窮大時(shí),算法執(zhí)行時(shí)間T(n)的數(shù)量級(jí)被稱為算法的________。</p><p>  17.在鏈表的結(jié)點(diǎn)中,數(shù)據(jù)元素所占的存儲(chǔ)量和整個(gè)結(jié)點(diǎn)所占

99、的存儲(chǔ)量之比稱作________。</p><p>  18.已知鏈棧的結(jié)點(diǎn)結(jié)構(gòu)為 棧頂指針為top,則實(shí)現(xiàn)將指針p所指結(jié)點(diǎn)插入棧頂?shù)恼Z(yǔ)句依次為________和________。</p><p>  19.空串的長(zhǎng)度是________;空格串的長(zhǎng)度是________。</p><p>  20.假設(shè)一個(gè)6階的下三角矩陣B按列優(yōu)先順序壓縮存儲(chǔ)

100、在一維數(shù)組A中,其中A[0]存儲(chǔ)矩陣的第一個(gè)元素b11,則A[14]存儲(chǔ)的元素是________。</p><p>  21.在一棵度為3的樹中,度為2的結(jié)點(diǎn)個(gè)數(shù)是1,度為0的結(jié)點(diǎn)個(gè)數(shù)是6,則度為3的結(jié)點(diǎn)個(gè)數(shù)是________。</p><p>  22.如圖所示的有向無(wú)環(huán)圖可以排出________種不同的拓?fù)湫蛄小?lt;/p><p>  23.利用篩選法將關(guān)鍵字序列

101、(37,66,48,29,31,75)建成的大根堆為(________)。</p><p>  24.對(duì)長(zhǎng)度為20的有序表進(jìn)行二分查找的判定樹的高度為________。</p><p>  25.在多重表文件中,次關(guān)鍵字索引的組織方式是將________的記錄鏈接成一個(gè)鏈表。</p><p>  三、解答題(每小題5分,共20分)</p><p&

102、gt;  26.對(duì)于單鏈表、單循環(huán)鏈表和雙向鏈表,如果僅僅知道一個(gè)指向鏈表中某結(jié)點(diǎn)的指針p,能否將p所指結(jié)點(diǎn)的數(shù)據(jù)元素與其確實(shí)存在的直接前驅(qū)交換?請(qǐng)對(duì)每一種鏈表作出判斷,若可以,寫出程序段;否則說(shuō)明理由。</p><p>  單鏈表和單循環(huán)鏈表的結(jié)點(diǎn)結(jié)構(gòu)為</p><p>  雙向鏈表的結(jié)點(diǎn)結(jié)構(gòu)為 </p><p><b>  (1)單鏈表</b&g

103、t;</p><p><b>  (2)單循環(huán)鏈表</b></p><p><b>  (3)雙向鏈表</b></p><p>  27.假設(shè)通信電文使用的字符集為{a,b,c,d,e,f,g},字符的哈夫曼編碼依次為:0110,10,110,111,00,0111和010。</p><p>  (

104、1)請(qǐng)根據(jù)哈夫曼編碼畫出此哈夫曼樹,并在葉子結(jié)點(diǎn)中標(biāo)注相應(yīng)字符;</p><p>  (2)若這些字符在電文中出現(xiàn)的頻度分別為:3,35,13,15,20,5和9,求該哈夫曼樹的帶權(quán)路徑長(zhǎng)度。</p><p>  28.當(dāng)采用鄰接表作為圖的存儲(chǔ)結(jié)構(gòu)時(shí),也可將鄰接表中的頂點(diǎn)表由順序結(jié)構(gòu)改為鏈表結(jié)構(gòu)。</p><p>  (1)請(qǐng)分別畫出這種鄰接表的頂點(diǎn)鏈表結(jié)點(diǎn)和邊表結(jié)

105、點(diǎn),并說(shuō)明結(jié)點(diǎn)中各個(gè)域的作用;</p><p>  (2)對(duì)如圖所示的有向圖畫出這種鄰接表。</p><p>  29.已知4階B-樹如圖所示。</p><p>  (1)分別畫出將關(guān)鍵字23和89相繼插入之后的B-樹。</p><p>  (2)畫出從插入之前的B-樹中刪除關(guān)鍵字51之后的B-樹。</p><p> 

106、 四、算法閱讀題(每小題5分,共20分)</p><p>  30.閱讀下列函數(shù)algo,并回答問題:</p><p>  (1)假設(shè)隊(duì)列q中的元素為(2,4,5,7,8),其中“2”為隊(duì)頭元素。寫出執(zhí)行函數(shù)調(diào)用algo(&q)后的隊(duì)列q;</p><p>  (2)簡(jiǎn)述算法algo的功能。</p><p>  void algo(Q

107、ueue *Q)</p><p><b>  {</b></p><p><b>  Stack S;</b></p><p>  InitStack(&S);</p><p>  while (!QueueEmpty(Q))</p><p>  Push(&

108、S, DeQueue(Q));</p><p>  while (! StackEmpty(&S))</p><p> ?。舗Queue(Q,Pop(&S));</p><p><b>  }</b></p><p><b>  (1)</b></p><p>

109、;<b>  (2)</b></p><p>  31.閱讀下列函數(shù)F,并回答問題:</p><p>  (1)已知如圖所示的二叉樹以二叉鏈表作存儲(chǔ)結(jié)構(gòu),rt為指向根結(jié)點(diǎn)的指針。寫出執(zhí)行函數(shù)調(diào)用F(rt)的輸出結(jié)果。</p><p>  (2)說(shuō)明函數(shù)F的功能。</p><p>  void F(BinTree T)&l

110、t;/p><p><b>  {</b></p><p><b>  Stack S;</b></p><p><b>  if(T)</b></p><p><b>  {</b></p><p>  InitStack(&S

111、);</p><p>  Push(&S,NULL);</p><p><b>  while(T)</b></p><p><b>  {</b></p><p>  printf("%c", T->data);</p><p>  if(

112、T->rchild) Push(&S,T->rchild);</p><p>  if(T->lchild)T=T->lchild;</p><p>  else T=Pop(&S);</p><p><b>  }</b></p><p><b>  }</b&g

113、t;</p><p><b>  }</b></p><p><b>  (1)</b></p><p><b>  (2)</b></p><p>  32.已知鄰接表的頂點(diǎn)表結(jié)點(diǎn)結(jié)構(gòu)為 </p><p>  邊表結(jié)點(diǎn)EdgeNode的結(jié)構(gòu)為</

114、p><p>  下列算法計(jì)算有向圖G中頂點(diǎn)vi的入度。請(qǐng)?jiān)诳杖碧幪钊牒线m的內(nèi)容,使其成為一個(gè)完整的算法。</p><p>  int FindDegree(ALGraph *G,int i)//ALGraph為圖的鄰接表類型</p><p><b>  {</b></p><p>  int dgree, j;</p&

115、gt;<p>  EdgeNode *p;</p><p>  degree= (1) ;</p><p>  for(j=0;j<G->n;j++)</p><p><b>  {</b></p><p>  p=G->adjlist[j]. firstedge;<

116、/p><p>  while ( (2) )</p><p><b>  {</b></p><p>  if( (3) )</p><p><b>  {</b></p><p><b>  degree++;</b>

117、</p><p><b>  break;</b></p><p><b>  }</b></p><p>  p=p->next;</p><p><b>  }</b></p><p><b>  }</b></p&

118、gt;<p>  return degree;</p><p><b>  }</b></p><p><b>  (1)</b></p><p><b>  (2)</b></p><p><b>  (3)</b></p>

119、<p>  33.已知單鏈表的結(jié)點(diǎn)結(jié)構(gòu)為</p><p>  下列算法對(duì)帶頭結(jié)點(diǎn)的單鏈表L進(jìn)行簡(jiǎn)單選擇排序,使得L中的元素按值從小到大排列。</p><p>  請(qǐng)?jiān)诳杖碧幪钊牒线m的內(nèi)容,使其成為完整的算法。</p><p>  void SelectSort(LinkedList L)</p><p><b>  {&l

120、t;/b></p><p>  LinkedList p,q,min;</p><p>  DataType rcd;</p><p>  p= (1) ;</p><p>  while(p!=NULL) {</p><p><b>  min=p;</b></p>

121、<p>  q=p->next;</p><p>  while(q!=NULL){</p><p>  if( (2) )min=q;</p><p>  q=q->next;</p><p><b>  }</b></p><p>  if( (3)

122、 ){</p><p>  rcd=p->data;</p><p>  p->data=min->data;</p><p>  min->data=rcd;</p><p><b>  }</b></p><p><b>  (4) ;</b&

123、gt;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  (1)</b></p><p><b>  (2)</b></p><p><b>  (3)</b

124、></p><p><b>  (4)</b></p><p>  五、算法設(shè)計(jì)題(本題10分)</p><p>  34.設(shè)線性表A=(a1,a2,a3,…,an)以帶頭結(jié)點(diǎn)的單鏈表作為存儲(chǔ)結(jié)構(gòu)。編寫一個(gè)函數(shù),對(duì)A進(jìn)行調(diào)整,使得當(dāng)n為奇數(shù)時(shí)A=(a2,a4,…,an-1,a1,a3,…,an),當(dāng)n為偶數(shù)時(shí)A=(a2,a4,…,an,a

125、1,a3,…,an-1)。</p><p>  2003年10月自考數(shù)據(jù)結(jié)構(gòu)試題答案</p><p>  全國(guó)2005年10月高等教育自學(xué)考試</p><p><b>  數(shù)據(jù)結(jié)構(gòu)試題</b></p><p>  課程代碼:02331</p><p>  一、單項(xiàng)選擇題(本大題共15小題,每小題2

126、分,共30分)</p><p>  在每小題列出的四個(gè)備選項(xiàng)中只有一個(gè)是符合題目要求的,請(qǐng)將其代碼填寫在題后的括號(hào)內(nèi)。錯(cuò)選、多選或未選均無(wú)分。</p><p>  1. 若將數(shù)據(jù)結(jié)構(gòu)形式定義為二元組(K,R),其中K是數(shù)據(jù)元素的有限集合,則R是K上</p><p><b>  ( ) </b></p><p>

127、  A. 操作的有限集合 B. 映象的有限集合</p><p>  C. 類型的有限集合 D. 關(guān)系的有限集合</p><p>  2. 在長(zhǎng)度為n的順序表中刪除第i個(gè)元素(1≤i≤n)時(shí),元素移動(dòng)的次數(shù)為( )</p><p>  A. n-i+1 B.

128、 i</p><p>  C. i+1 D. n-i</p><p>  3. 若不帶頭結(jié)點(diǎn)的單鏈表的頭指針為head,則該鏈表為空的判定條件是( )</p><p>  A. head==NULL B. head->next==NULL</p><p>

129、;  C. head!=NULL D. head->next==head</p><p>  4. 引起循環(huán)隊(duì)列隊(duì)頭位置發(fā)生變化的操作是( )</p><p>  A. 出隊(duì) B. 入隊(duì)</p><p>  C. 取隊(duì)頭元素 D. 取隊(duì)尾元素&l

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論