猴子選王問題求解和二叉樹建立——課程設(shè)計(jì)報(bào)告_第1頁
已閱讀1頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  《數(shù)據(jù)結(jié)構(gòu)》課程設(shè)計(jì)</p><p>  ———————猴子選王問題求解和二叉樹的建立</p><p>  專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù)</p><p><b>  班 級(jí) </b></p><p><b>  指導(dǎo)教師 </b></p><p

2、>  編寫日期 2012年6月24日</p><p><b>  目 錄</b></p><p>  一、 課程設(shè)計(jì)的目的………………………………………………3</p><p>  二、 課程設(shè)計(jì)的要求………………………………………………3</p><p>  三、 相關(guān)知識(shí)………………………………………

3、………………3</p><p>  四、 問題的分析……………………………………………………3</p><p>  五、 數(shù)據(jù)結(jié)構(gòu)的描述………………………………………………4</p><p>  六、 算法的設(shè)計(jì)……………………………………………………4</p><p>  七、 代碼實(shí)現(xiàn)………………………………………………………6&

4、lt;/p><p>  八、 程序運(yùn)行成功展示……………………………………………11</p><p>  九、 心得體會(huì)………………………………………………………14</p><p>  十、 參考資料………………………………………………………14</p><p><b>  一、課程設(shè)計(jì)的目的</b></p&g

5、t;<p>  課程設(shè)計(jì)是學(xué)生對(duì)課程所學(xué)知識(shí)的綜合運(yùn)用,它與課堂聽講、上機(jī)實(shí)驗(yàn)、課外練習(xí)、自學(xué)研究相輔相成,構(gòu)成一個(gè)完整的課程教學(xué)體系。《數(shù)據(jù)結(jié)構(gòu)》是一門實(shí)踐性強(qiáng)的課程,其中對(duì)算法設(shè)計(jì)和程序編寫的掌握尤為重要。學(xué)生雖然可以通過與課堂教學(xué)同步的上機(jī)實(shí)驗(yàn)完成相關(guān)內(nèi)容的練習(xí),但卻往往局限于一些功能簡單、彼此之間關(guān)系獨(dú)立的算法和程序。課程設(shè)計(jì)是一種綜合訓(xùn)練,致力于培養(yǎng)學(xué)生全面、靈活的算法設(shè)計(jì)思想和較高的編程能力,為今后從事計(jì)算機(jī)開

6、發(fā)與應(yīng)用打下基礎(chǔ)。新世紀(jì)需要具有豐富科學(xué)知識(shí)、獨(dú)立解決實(shí)際問題、有創(chuàng)造能力的新型人才,這也是該課程設(shè)計(jì)的最終目的。</p><p><b>  二、課程設(shè)計(jì)的要求</b></p><p>  1、猴子選王問題描述</p><p>  一堆猴子都有編號(hào),編號(hào)是1,2,3 ...m ,這群猴子(m個(gè))按照1-m的順序圍坐一圈,從第1開始數(shù),每數(shù)到第

7、n個(gè),該猴子就要離開此圈,這樣依次下來,直到圈中只剩下最后一只猴子,則該猴子為大王。</p><p>  2、二叉樹的建立描述</p><p>  已知二叉樹T中結(jié)點(diǎn)的前序和中序遍歷序列,編寫算法實(shí)現(xiàn)構(gòu)造滿足上述條件的二叉樹。 </p><p>  3、界面設(shè)計(jì)模塊問題描述</p><p>  設(shè)計(jì)一個(gè)菜單式界面,讓用戶可以選擇要解決的問題,

8、同時(shí)可以退出程序。界面要求簡潔明了,大方得體,便于用戶的使用,同時(shí),對(duì)于用戶的錯(cuò)誤選擇可以進(jìn)行有效的處理。</p><p><b>  三、相關(guān)知識(shí)</b></p><p><b>  1、猴子選王求解</b></p><p>  約瑟夫環(huán)(Josephus)問題是由古羅馬的史學(xué)家約瑟夫(Josephus)提出的,他參加并

9、記錄了公元66—70年猶太人反抗羅馬的起義。約瑟夫作為一個(gè)將軍,設(shè)法守住了裘達(dá)伯特城達(dá)47天之久,在城市淪陷之后,他和40名死硬的將士在附近的一個(gè)洞穴中避難。在那里,這些叛亂者表決說“要投降毋寧死”。于是,約瑟夫建議每個(gè)人輪流殺死他旁邊的人,而這個(gè)順序是由抽簽決定的。約瑟夫有預(yù)謀地抓到了最后一簽,并且,作為洞穴中的兩個(gè)幸存者之一,他說服了他原先的犧牲品一起投降了羅馬。 </p><p>  約瑟夫環(huán)問題的具體描述

10、是:設(shè)有編號(hào)為1,2,……,n的n(n>0)個(gè)人圍成一個(gè)圈,從第1個(gè)人開始報(bào)數(shù),報(bào)到m時(shí)停止報(bào)數(shù),報(bào)m的人出圈,再從他的下一個(gè)人起重新報(bào)數(shù),報(bào)到m時(shí)停止報(bào)數(shù),報(bào)m的出圈,……,如此下去,直到所有人全部出圈為止。當(dāng)任意給定n和m后,設(shè)計(jì)算法求n個(gè)人出圈的次序</p><p><b>  2、二叉樹的建立</b></p><p>  二叉樹的存儲(chǔ)結(jié)構(gòu)為二叉鏈表<

11、;/p><p><b>  C語言</b></p><p><b>  二叉樹的遍歷</b></p><p><b>  四、問題的分析</b></p><p>  1、猴子選王問題的分析</p><p>  通過問題的文字描述可以先把問題簡化為一個(gè)簡單的線

12、性順序表,然后通過順序查找來刪除所需元素,但是因?yàn)樵擃}的需要進(jìn)行循環(huán)計(jì)數(shù),因此需要將此線性順序表改造成為一個(gè)循環(huán)鏈表,通過指針將表頭和表尾連接起來,再通過指針計(jì)數(shù)將所需刪除的元素導(dǎo)出,最后通過重復(fù)操作將元素逐一刪除,得到自己最后想要得到的元素,即猴王。</p><p><b>  2、二叉樹的建立</b></p><p>  由于要根據(jù)二叉樹中結(jié)點(diǎn)的中序和后序遍歷序列

13、,建立的二叉樹以二叉鏈表的存儲(chǔ)結(jié)構(gòu)進(jìn)行存儲(chǔ),并且輸出二叉樹的先序遍歷序列,所以我們先根據(jù)后序遍歷序列的最后一個(gè)結(jié)點(diǎn)是根節(jié)點(diǎn)出發(fā),再在中序遍歷序列中找個(gè)該字符,則左右兩邊分別為左右子數(shù)的字符序列.以這個(gè)思想遞歸調(diào)用函數(shù)建立起二叉樹.然而先序遍歷是先遍歷根節(jié)點(diǎn)再遍歷左右字?jǐn)?shù),我們就編寫相關(guān)的函數(shù)調(diào)用即可</p><p><b>  五、數(shù)據(jù)結(jié)構(gòu)描述</b></p><p>

14、;  typedef struct Lnode{</p><p><b>  int data;</b></p><p>  struct Lnode *next;</p><p>  }linklist;//單鏈表解決猴子選王時(shí)儲(chǔ)存結(jié)點(diǎn)信息</p><p>  typedef struct node{ </p&g

15、t;<p>  char data;</p><p>  struct node * lch,*rch;</p><p>  }BTNode,*BTree;//樹的二叉鏈表儲(chǔ)存表示</p><p><b>  六、算法的設(shè)計(jì)</b></p><p><b>  1、程序功能模塊圖</b>

16、;</p><p><b>  2、算法設(shè)計(jì)</b></p><p><b> ?。?)猴子選擇問題</b></p><p>  head = (linklist*) malloc(sizeof(linklist)); /* 創(chuàng)建循環(huán)鏈表,頭節(jié)點(diǎn)也存信息*/</p><p><b>  p

17、 = head;</b></p><p>  p->data = 1;</p><p>  p->next = p;</p><p>  for (i = 2; i <= n; i++) {</p><p>  s = (linklist*) malloc(sizeof(linklist));</p>

18、;<p>  s->data = i;</p><p>  s->next = p->next;</p><p>  p->next = s;</p><p>  p = p->next;</p><p>  } /* 初始化循環(huán)鏈表*/</p><p><b&g

19、t;  p = head;</b></p><p>  for (i = 1; i < k; i++){</p><p>  p = p->next;</p><p>  } /* 找到第k 個(gè)節(jié)點(diǎn)*/</p><p>  total = n; /* 保存節(jié)點(diǎn)總數(shù)*/</p><p>

20、  printf("\n出局序列為:");</p><p><b>  q = head;</b></p><p>  while (total != 1) /* 只剩一個(gè)節(jié)點(diǎn)時(shí)停止循環(huán)*/</p><p><b>  {</b></p><p>  for (i = 1;

21、 i < m; i++){</p><p>  p = p->next;</p><p>  } /* 報(bào)數(shù)過程,p指向要?jiǎng)h除的節(jié)點(diǎn)*/</p><p>  printf("[%d] ", p->data);/* 打印要?jiǎng)h除的節(jié)點(diǎn)序號(hào)*/</p><p>  while (q->next !=

22、p){</p><p>  q = q->next;</p><p>  }/* q 指向p 節(jié)點(diǎn)的前驅(qū)*/</p><p>  q->next = p->next; /* 刪除p 節(jié)點(diǎn)*/</p><p>  s = p;/* 保存被刪除節(jié)點(diǎn)指針*/</p><p>  p = p->next

23、;/* p 指向被刪除節(jié)點(diǎn)的后繼*/</p><p>  free(s);/* 釋放被刪除的節(jié)點(diǎn)*/</p><p>  total--; /* 節(jié)點(diǎn)個(gè)數(shù)減一*/</p><p><b>  }</b></p><p><b> ?。?)二叉樹的建立</b></p><p>

24、  void create(BTree *t,int instart,int inend,int poststart,int postend)</p><p><b>  {int i;</b></p><p>  if(inend>=instart&&postend>=poststart)</p><p><

25、b>  {</b></p><p>  *t=(BTree)malloc(LEN);</p><p>  (*t)->data=post[postend];</p><p>  i=instart;</p><p>  while(pin[i]!=post[postend])i++;</p><p&

26、gt;  if(i==instart)</p><p>  (*t)->lch=NULL;</p><p><b>  else{</b></p><p>  create(&(*t)->lch,instart,i-1,poststart,poststart+i-1-instart);</p><p>

27、;  /*左子樹的中序起始點(diǎn)為整棵樹的中序起始點(diǎn)instart*/</p><p>  /* 終止點(diǎn)為根節(jié)點(diǎn)的前一個(gè)i-1 */</p><p>  /* 后序起始點(diǎn)為整棵樹的后序起始點(diǎn)poststart*/</p><p>  /* 后序終止點(diǎn)為后序起始點(diǎn)加上左子樹節(jié)點(diǎn)個(gè)數(shù)減一:*/</p><p>  /* poststart+(i-1-

28、instart+1)-1*/</p><p><b>  }</b></p><p>  if(i==inend)</p><p>  (*t)->rch=NULL; /*如果根在中序序列的最后一個(gè)右空*/</p><p><b>  else</b></p>

29、<p><b>  {</b></p><p>  create(&(*t)->rch,i+1,inend,poststart+i-instart,postend-1);</p><p>  /*右子樹的中序起始點(diǎn)是根的下一個(gè)i+1*/</p><p>  /* 終止點(diǎn)是整棵樹中序的終止點(diǎn)inend*/</p&g

30、t;<p>  /* 后序的起始點(diǎn)是左子樹后序終止點(diǎn)的下一個(gè)poststart+i-1-instart+1*/</p><p>  /* 終止點(diǎn)是除根外的最后一個(gè)節(jié)點(diǎn),即倒數(shù)第二個(gè)*/</p><p><b>  }</b></p><p><b>  }</b></p><p>&l

31、t;b>  else</b></p><p><b>  *t=NULL;</b></p><p><b>  }</b></p><p><b>  七、代碼實(shí)現(xiàn)</b></p><p>  #include "stdafx.h"<

32、/p><p>  #include<stdio.h></p><p>  #include <conio.h></p><p>  #include <stdlib.h></p><p>  #define EL 10</p><p>  #define TEL 2*EL+1</p

33、><p>  #define LEN sizeof(struct node)</p><p>  void welcome(){ </p><p>  printf(" ******** WELCOME COME TO OUR SYSTEM ********\n");</p><p>  pr

34、intf(" *******\n");</p><p>  printf(" **** ****\n");</p><p>  printf(" **

35、 **\n");</p><p>  printf(" ** ∩ ∩ **\n"); </p><p>  printf(" ** **\n"); </p>

36、<p>  printf(" ** O **\n");</p><p>  printf(" ** **\n");</p><p>  printf("

37、 ** _______ **\n");</p><p>  printf(" **** ****\n");</p><p>  printf(" *****************************

38、*********************\n");</p><p>  printf(" * * *\n");</p><p>  printf(" * *

39、*\n");</p><p>  printf(" * * *\n"); </p><p>  printf(" * *************************** *\n");&l

40、t;/p><p>  printf(" * **1.The monkey King Slect** *\n");</p><p>  printf(" * *************************** *\n");</p><p> 

41、 printf(" * *\n");</p><p>  printf(" ***************** **********\n");</p><p>  printf("

42、 **2.Binary Tree** **3.exit**\n");</p><p>  printf(" ***************** **********\n");</p><p><b>  }</b></p&

43、gt;<p>  /* 以下是二叉樹的程序*/</p><p>  char post[TEL]="CEDBHGJIFA";</p><p>  char pin[TEL]="CBEDAGHFJI";</p><p>  typedef struct node</p><p>  { ch

44、ar data;</p><p>  struct node * lch,*rch;</p><p>  }BTNode,*BTree;</p><p>  BTNode root;</p><p>  BTree rt=&root;</p><p>  void create(BTree *t,int ins

45、tart,int inend,int poststart,int postend)</p><p><b>  {int i;</b></p><p>  if(inend>=instart&&postend>=poststart)</p><p><b>  {</b></p>

46、<p>  *t=(BTree)malloc(LEN);</p><p>  (*t)->data=post[postend];</p><p>  i=instart;</p><p>  while(pin[i]!=post[postend])i++;</p><p>  if(i==instart)</p>

47、<p>  (*t)->lch=NULL;</p><p><b>  else{</b></p><p>  create(&(*t)->lch,instart,i-1,poststart,poststart+i-1-instart);</p><p>  /*左子樹的中序起始點(diǎn)為整棵樹的中序起始點(diǎn)instar

48、t*/</p><p>  /* 終止點(diǎn)為根節(jié)點(diǎn)的前一個(gè)i-1 */</p><p>  /* 后序起始點(diǎn)為整棵樹的后序起始點(diǎn)poststart*/</p><p>  /* 后序終止點(diǎn)為后序起始點(diǎn)加上左子樹節(jié)點(diǎn)個(gè)數(shù)減一:*/</p><p>  /* poststart+(i-1-instart+1)-1*/</p><

49、p><b>  }</b></p><p>  if(i==inend) </p><p>  (*t)->rch=NULL; /*如果根在中序序列的最后一個(gè)右空*/</p><p><b>  else</b></p><p><b>  {

50、</b></p><p>  create(&(*t)->rch,i+1,inend,poststart+i-instart,postend-1);</p><p>  /*右子樹的中序起始點(diǎn)是根的下一個(gè)i+1*/</p><p>  /* 終止點(diǎn)是整棵樹中序的終止點(diǎn)inend*/</p><p>  /* 后序的起

51、始點(diǎn)是左子樹后序終止點(diǎn)的下一個(gè)poststart+i-1-instart+1*/</p><p>  /* 終止點(diǎn)是除根外的最后一個(gè)節(jié)點(diǎn),即倒數(shù)第二個(gè)*/ </p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b&g

52、t;</p><p><b>  *t=NULL;</b></p><p><b>  }</b></p><p>  void travel(BTree t)</p><p><b>  {if(t)</b></p><p><b>  {&

53、lt;/b></p><p>  putchar(t->data);</p><p>  travel(t->lch);</p><p>  travel(t->rch);</p><p><b>  }</b></p><p><b>  }</b>

54、</p><p>  void Binary (){</p><p>  printf("*****************************WELCOME BINARY TREE********************************\n");</p><p>  printf("

55、 小組成員:PPT 演講:張琪\n");</p><p>  printf("\n");</p><p>  printf(" 資料搜集:施芳\n");</p><p>  printf("\n");</p><p>

56、;  printf(" 程序編譯:陳孝堅(jiān)\n");</p><p>  printf("\n");</p><p>  printf("后序是:CBEDAGHFJI\n");</p><p>  printf("中序是:CEDBHGJIFA

57、\n");</p><p>  printf("輸入任意字符查看先序序列:"); </p><p><b>  getch(); </b></p><p>  create(&rt,0,9,0,9);</p><p>  if(rt) travel(rt);</p>&

58、lt;p><b>  }</b></p><p>  /* 以下是猴子選王的程序*/</p><p>  typedef struct Lnode{</p><p><b>  int data;</b></p><p>  struct Lnode *next;</p><

59、;p>  }linklist;/* 定義鏈表節(jié)點(diǎn)類型*/</p><p>  int mokeyking(){</p><p>  int i, n, k, m, total;</p><p>  linklist *head, *p, *s, *q; </p><p>  printf("\n");</p&g

60、t;<p>  printf("\n");</p><p>  printf("************************WELCOME THE MONKEY KING SLECT***************************\n"); </p><p>  printf("

61、 小組成員:PPT 演講:呂光躍\n");</p><p>  printf("\n");</p><p>  printf(" 資料搜集:樓冰\n");</p><p>  printf("\n");</p><p&

62、gt;  printf(" 程序編譯:龍啟昌\n");</p><p>  printf("\n");</p><p>  printf("請(qǐng)輸入猴子的個(gè)數(shù)n:");</p><p>  scanf("%d", &n);

63、</p><p>  printf("請(qǐng)輸入要從第幾個(gè)猴子開始報(bào)數(shù)k:");</p><p>  scanf("%d", &k);</p><p>  printf("請(qǐng)輸入出局?jǐn)?shù)字m:");</p><p>  scanf("%d", &m);

64、 /* 讀入問題條件*/ </p><p>  head = (linklist*) malloc(sizeof(linklist)); /* 創(chuàng)建循環(huán)鏈表,頭節(jié)點(diǎn)也存信息*/</p><p><b>  p = head;</b></p><p>  p->data = 1;</p><p&g

65、t;  p->next = p; </p><p>  for (i = 2; i <= n; i++) {</p><p>  s = (linklist*) malloc(sizeof(linklist));</p><p>  s->data = i;</p><p>  s->n

66、ext = p->next;</p><p>  p->next = s;</p><p>  p = p->next;</p><p>  } /* 初始化循環(huán)鏈表*/</p><p><b>  p = head;</b></p><p>  for (i = 1; i

67、 < k; i++){</p><p>  p = p->next;</p><p>  } /* 找到第k 個(gè)節(jié)點(diǎn)*/ </p><p>  total = n; /* 保存節(jié)點(diǎn)總數(shù)*/</p><p>  printf("\n出局序列為:");</p><p><b&

68、gt;  q = head;</b></p><p>  while (total != 1) /* 只剩一個(gè)節(jié)點(diǎn)時(shí)停止循環(huán)*/</p><p><b>  {</b></p><p>  for (i = 1; i < m; i++){</p><p>  p = p->next;<

69、/p><p>  } /* 報(bào)數(shù)過程,p指向要?jiǎng)h除的節(jié)點(diǎn)*/</p><p>  printf("[%d] ", p->data);/* 打印要?jiǎng)h除的節(jié)點(diǎn)序號(hào)*/</p><p>  while (q->next != p){</p><p>  q = q->next;</p><p

70、>  }/* q 指向p 節(jié)點(diǎn)的前驅(qū)*/</p><p>  q->next = p->next; /* 刪除p 節(jié)點(diǎn)*/</p><p>  s = p;/* 保存被刪除節(jié)點(diǎn)指針*/</p><p>  p = p->next;/* p 指向被刪除節(jié)點(diǎn)的后繼*/</p><p>  free(s);/* 釋放被刪除的

71、節(jié)點(diǎn)*/</p><p>  total--; /* 節(jié)點(diǎn)個(gè)數(shù)減一*/</p><p><b>  }</b></p><p>  printf("\n\n猴子大王為第[%d] 號(hào)\n\n", p->data);/* 打印最后剩下的節(jié)點(diǎn)序號(hào)*/</p><p><b>  free(p

72、);</b></p><p>  //system("pause");</p><p><b>  return 0;</b></p><p><b>  }</b></p><p>  int _tmain(int argc, _TCHAR* argv[])<

73、/p><p><b>  {</b></p><p><b>  int a;</b></p><p>  welcome();</p><p>  printf("please choose the function :");</p><p>  scanf

74、("%d",&a);</p><p>  while(a!=3){</p><p>  switch(a){</p><p>  case 1:system("cls"); mokeyking(); getch();break;</p><p>  case 2:system("cl

75、s"); Binary (); getch();break;</p><p>  default: printf("please chooose the right choice!");break;</p><p><b>  }</b></p><p>  system("cls");<

76、;/p><p>  welcome();</p><p>  printf("please choose the function :\n"); </p><p>  scanf("%d",&a);</p><p><b>  }</b></p><p>

77、;<b>  return 0;</b></p><p><b>  }</b></p><p>  八、程序運(yùn)行成功展示</p><p><b>  1、主鍵面</b></p><p><b>  2、輸入1</b></p><p&g

78、t;  3、輸入23只猴子,從第1只開始報(bào)數(shù),每數(shù)到5就出局</p><p>  4、按任意鍵后返回主鍵面輸入2</p><p><b>  5、按任意鍵</b></p><p>  6、按任意鍵后返回主鍵面輸入3</p><p><b>  7、退出程序</b></p><p&

79、gt;<b>  九、心得體會(huì)</b></p><p><b>  1、猴子選王問題</b></p><p>  設(shè)計(jì)是培養(yǎng)并提高我們中和運(yùn)用所學(xué)知識(shí)的能力,鍛煉我們實(shí)際解決問題的能力,是對(duì)我們學(xué)生實(shí)際工作能力的考驗(yàn)和提高。</p><p>  從拿到題目到完成整個(gè)編程,從理論到實(shí)踐,在這一個(gè)多星期的時(shí)間里,學(xué)到了很多在課

80、堂上不能了解的東西,而且鞏固了以前所學(xué)過的知識(shí),能夠做到將理論和實(shí)踐相結(jié)合,提高了自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力,在設(shè)計(jì)過程中發(fā)現(xiàn)自己的不足之處,并且得到了一定的改善,總的來說通過這次課程設(shè)計(jì),對(duì)程序不斷改善的同時(shí),也是對(duì)自身的不斷改善,非常感謝學(xué)校提供的這次課程設(shè)計(jì)的機(jī)會(huì)</p><p><b>  2、二叉樹的建立</b></p><p>  從本次課程設(shè)計(jì)中

81、我們了解的二叉樹遍歷的重要性,以及先序遍歷、中序遍歷、后序遍歷的相關(guān)算法.明白了二叉樹是一種重要的數(shù)據(jù)結(jié)構(gòu),很好的編程思想,在學(xué)習(xí)中有很多作用. 通過這次課程設(shè)計(jì),理論知識(shí)和實(shí)踐相互結(jié)合才能實(shí)現(xiàn)程序,通過查閱資料豐富了以前所遺漏的知識(shí),同時(shí)又更加充實(shí)了以前所遺漏的知識(shí),了解了算法在編程中的重要性,一個(gè)好的算法能極大地優(yōu)化一個(gè)程序</p><p>  通過這次的課程設(shè)計(jì),我們學(xué)到了怎么樣從一個(gè)實(shí)際問題出發(fā),建立模型

82、,找到相應(yīng)的儲(chǔ)存結(jié)構(gòu)和實(shí)現(xiàn)方法,實(shí)際運(yùn)行,反復(fù)調(diào)試和修改,最終實(shí)現(xiàn)功能。在程序設(shè)計(jì)方法以及上機(jī)操作等基本技能和科學(xué)作風(fēng)方面受到比較系統(tǒng)和嚴(yán)格的訓(xùn)練,學(xué)會(huì)數(shù)據(jù)組織的方法,把現(xiàn)實(shí)世界中的實(shí)際問題在計(jì)算機(jī)內(nèi)部表示出來并用軟件解決問題,培養(yǎng)了良好的程序設(shè)計(jì)技能。</p><p><b>  十、參考資料:</b></p><p>  [1] 朱蓉.數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)指導(dǎo)書</

83、p><p>  [2]蔡子經(jīng),施伯樂.數(shù)據(jù)結(jié)構(gòu)教程.上海:復(fù)旦大學(xué)出版社.1994</p><p>  [3]嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語言版).北京:清華大學(xué)出版社.1997;</p><p>  [4]嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)題集(C語言版).北京:清華大學(xué)出版社.1997;</p><p>  [5]孟佳娜,胡瀟琨.算法與數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)與習(xí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(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)論