C語言版數據結構實驗報告_第1頁
C語言版數據結構實驗報告_第2頁
C語言版數據結構實驗報告_第3頁
C語言版數據結構實驗報告_第4頁
C語言版數據結構實驗報告_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、蘇州科技學院數據結構(CC語言版版)實驗報告專業(yè)班級 測測繪09911 學 號 0992011151130 姓 名 朱朱輝 實習地點 C1-2033 指導教師 史守守正 實驗四 圖程序設計的的基本思思想,原原理和算算法描述述:圖是一種較較線性表表和樹更更加復雜雜的一種種數據結結構,在在圖形結結構中,結結點之間間的關系系可以是是任意的的,圖中中任意兩兩個數據據元素之之間都可可能相關關,圖主主要有無無向圖,有有向圖等等(1)建立立無向網網的鄰接接矩陣存存儲并輸輸出,參參考程序序清單,實實現無向向圖的鄰鄰接矩陣陣表示。(2)建立立圖的鄰鄰接表存存儲并在在此基礎礎上實現現圖的深深度優(yōu)先先遍歷和和廣度優(yōu)

2、優(yōu)先遍歷歷備注:無向向圖已完完成,無無向網需需要自己己建立(參照算算法7.2);參照算算法7.4, 7.55,7.6完成成圖的深深度遍歷歷,廣度度遍歷;請?zhí)砑蛹舆m當的的注釋。二、源程序序及注釋釋(打包包上傳):三、運行輸輸出結果果:四、調試和和運行程程序過程程中產生生的問題題及采取取的措施施:在程序編輯輯的過程程中,有有許多地地方出現現不能順順序運行行的,還還有代碼碼出現遺遺漏出錯錯,圖的的遍歷是是重點但但因為知知識的殘殘缺不能能完整的的編譯出出來,又又或者編編譯的程程序不能能正確的的得到結結果,再再通過多多人合作作共同討討論后得得到了滿滿意的解解決。五、對算法法的程序序的討論論、分析析,改進

3、進設想,其其它經驗驗教訓:經過這次這這么復雜雜的程序序實驗,我我終于發(fā)發(fā)現了調調用函數數的巨大大優(yōu)越性性,以前前遇到都都是很短短的程序序,感覺覺調用有有點多余余,但復復雜的程程序時,如如果不采采用調用用的話,會會使程序序非常的的亂,改改程序時時不知道道從哪改改,調用用函數能能夠更好好使程序序簡潔話話,層次次話,更更加容易易讓人看看懂這次次試驗的的邏輯性性給了我我們很大大啟發(fā)通通過本次次實驗讓讓我對圖圖有了更更深刻的的認識,再再通過多多次的更更改后終終于將實實驗做出出來,在在實驗中中也出現現了許多多問題,有有不出結結果,有有不能運運行的,但但最終只只要努力力都會搞搞定的實驗五 查找找一、程序設設

4、計的基基本思想想,原理理和算法法描述:實現二叉排排序樹上上的查找找、插入入、刪除除算法。具具體實現現要求:用二叉鏈表表做存儲儲結構,輸輸入鍵值值序列,利利用查找找、插入入算法建建立一棵棵二叉排排序樹。按中序遍歷歷這棵二二叉排序序樹。在二叉排序序樹上插插入結點點。刪除二叉排排序樹上上的結點點。二、源程序序及注釋釋(打包包上傳):三、運行輸輸出結果果:四、調試和和運行程程序過程程中產生生的問題題及采取取的措施施:查找是一種種常用到到的方法法在程序序中十分分常見,在在程序運運行中。由由于對遍遍歷了解解的不深深刻不能能夠完全全領悟其其中的運運行原理理,所以以出現沒沒有結果果輸出的的現象。在在書中不不斷

5、的了了解分析析下從而而得到了了解決,書書本的知知識很有有作用。五、對算法法的程序序的討論論、分析析,改進進設想,其其它經驗驗教訓: 經過這次次這么復復雜的程程序實驗驗,我終終于發(fā)現現了調用用函數的的巨大優(yōu)優(yōu)越性,以以前遇到到都是很很短的程程序,感感覺調用用有點多多余,但但復雜的的程序時時,如果果不采用用調用的的話,會會使程序序非常的的亂,改改程序時時不知道道從哪改改,調用用函數能能夠更好好使程序序簡潔話話,層次次話,更更加容易易讓人看看懂這次次試驗的的邏輯性性給了我我們很大大啟發(fā),在在程序不不斷復雜雜的今天天只有很很好了解解程序的的過程,把把握程序序中心思思想才能能夠更好好的完善善研發(fā)程程序,

6、在在不斷的的累積中中達到更更高的層層次。實驗六 排序序程序設計的的基本思思想,原原理和算算法描述述排序是計算算機程序序設計中中的一種種重要操操作。它它的主要要思想是是將一個個數據元元素的任任意序列列,比較較多種排排序的優(yōu)優(yōu)劣主要要是看它它排序的的效率。重重新排列列成一個個按關鍵鍵字有序序的序列列,編寫寫主函數數,分別別實現直直接插入入、冒泡泡排序(算算法在PP16)、快快速排序序、簡單單選擇排排序、堆堆排序等等排序算算法。直接插入排排序:是是一種最最簡單的的排序,是是將一個個記錄插插入到已已排好序序的初始始排列中中冒泡排序;依次比比較相鄰鄰的兩個個數,將將小數放放在前面面,大數數放在后后面。即

7、即在第一一趟:首首先比較較第1個個和第22個數,將將小數放放前,大大數放后后。然后后比較第第2個數數和第33個數,將將小數放放前,大大數放后后,如此此繼續(xù),直直至比較較最后兩兩個數,將將小數放放前,大大數放后后。至此此第一趟趟結束,將將最大的的數放到到了最后后。在第第二趟:仍從第第一對數數開始比比較(因因為可能能由于第第2個數數和第33個數的的交換,使使得第11個數不不再小于于第2個個數),將將小數放放前,大大數放后后,一直直比較到到倒數第第二個數數(倒數數第一的的位置上上已經是是最大的的),第第二趟結結束,在在倒數第第二的位位置上得得到一個個新的最最大數(其其實在整整個數列列中是第第二大的的

8、數)。如如此下去去,重復復以上過過程,直直至最終終完成排排序。 由于在在排序過過程中總總是小數數往前放放,大數數往后放放,相當當于氣泡泡往上升升,所以以稱作冒冒泡排序序。 用二重重循環(huán)實實現,外外循環(huán)變變量設為為i,內內循環(huán)變變量設為為j。外外循環(huán)重重復9次次,內循循環(huán)依次次重復99,8,.,11次。每每次進行行比較的的兩個元元素都是是與內循循環(huán)j有有關的,它它們可以以分別用用ajj和aaj+1標標識,ii的值依依次為11,2,.,9,對對于每一一個i, j的的值依次次為1,2,.110-ii。二、源程序序及注釋釋(打包包上傳):三、運行輸輸出結果果:四、調試和和運行程程序過程程中產生生的問題

9、題及采取取的措施施: 剛開開始看到到程序,太太長,一一點也看看不懂它它的意思思,無從從下手的的感覺,這這是就要要考驗人人的耐心心,慢慢慢看,結結合書里里所講的的知識,終終于理解解整個程程序,還還有遞歸歸的使用用,要注注意,初初始時的的狀態(tài)以以及如何何使用遞遞歸,注注意普遍遍性,思思考時從從普通的的開始。五、對算法法的程序序的討論論、分析析,改進進設想,其其它經驗驗教訓:排序是非常常重要的的一種技技術手段段,能夠夠提高效效率,簡簡化過程程,選擇擇何種排排序方法法需要我我們更好好的理解解各種排排序方法法的主要要思想及及原理,這這對我們們以后工工作的幫幫組是非非常大的的,經過過這次這這么復雜雜的程序序實驗,我我終于發(fā)發(fā)現了調調用函數數的巨

溫馨提示

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

評論

0/150

提交評論