《資料結構》(嚴蔚敏,吳偉民版)課本原始碼+習題集解析使用說明

StrayedKing發表於2015-12-22

先附上文件歸類目錄:

 

課本原始碼合輯 連結☛☛☛ 《資料結構》課本原始碼合輯

習題集全解析 連結☛☛☛ 《資料結構習題集》答案解析合輯

習題完整原始碼 連結☛☛☛  習題完整原始碼合輯

 

教材所有原始碼 連結☛☛☛  《資料結構》-嚴蔚敏,吳偉民-原始碼 (GitHub倉庫)

 

博主有話說:(部落格地址已遷移 ☛☛☛ 新部落格連結)

01.自學程式設計,難免思路阻塞,故我在本部落格陸續更新了嚴蔚敏,吳偉民版《資料結構-C語言版》各章節的課本原始碼和配套習題集答案解析,目的是為了整理資料結構中的知識點,並與網友交流意見,集思廣益,共同進步。(目前已更新完畢,細節待完善

    ★注★ 左側《資料結構》目錄下分三個欄目<課本><習題集><習題詳解>

                <課本>目錄下實現了三類,或者說是三種來源的資料結構原始碼:一種是課本中重點描述過的資料結構與演算法,另一種是課本中提到,但只

         是一筆帶過的資料結構;還有一種是課本中未提到,但在習題集中涉及到的資料結構

                <習題集>目錄下存放了配套習題集中每章的習題解答,但對於演算法設計題,只給出了關鍵程式碼,詳細的實現放在了習題詳解目錄下。

                <習題詳解>目錄下存放了習題集中每個演算法設計題的詳細解答

 

02.本原始碼涵蓋了《資料結構》課本習題集兩部分,課本和習題集分別以下圖書籍為參照:

 

 

03.所有原始碼實現均使用C語言,遵循C89或C99標準,使用C-Free 5(內建gcc編譯器)測試通過。

 

 

04.為了便於引用、查閱,將各章內容分資料夾存放,其中,《▲課本演算法實現》中存放對課本中演算法的實現,《▼配套習題解析》存放對題集中習題的解答,各原始檔按章、節組織,組織方式見附錄。

 

★★★05.注意各文件引用.h檔案或.c檔案時的相對路徑。為保證原始碼中對各.h.c文件的引用有效,請保持各文件的相對位置固定

 

★★★06.對於主文件(含有main函式的文件),#include自定義原始碼時引入的是.c檔案而不是.h檔案,其原因是測試用的gcc編譯器支援直接編譯,無需建立工程。如果是在Visual Studio等必須建立工程才能測試的編譯器下,請引入.h檔案,而且,對全域性變數的定義等可能需要作出修改,變為帶有extren的形式。

 

07.部分型別定義名稱、巨集名、函式名和演算法步驟與原書略有區別,但演算法思想與原書一致,這樣“改寫”主要是為了易於區分各名稱並簡化操作。

 

08.各演算法並非100%完善,未考慮所有意外,未做過多輸入與輸出驗證。

 

09.有的資料結構在建立之前需要初始化,有的建立和初始化合為一體。

 

10.大多陣列0號單元棄用,或用作計數器。

 

11.留意全域性變數和型別定義、巨集定義。

 

12.演算法的測試文件中有些看似“多餘”的縮排是為了區分不同功能模組,便於瀏覽。

 

★★★13.在習題集解析中,不同人可能會對同一個題的理解有差別,所以這裡只是表達我個人的想法,不代表其他任何人角度。

 

14.在習題解析中,對於演算法設計題給出了關鍵程式碼,完整的習題程式碼請檢視附註的連結。

 

15.所有涉及到的原始碼都是以圖片給出的,目的一是為了防止有同學抄作業,目的二是希望初學的可以自己把程式碼敲一遍,而不是複製貼上過去光看不練。

 

16.有疑問聯絡博主。

 

17.待續…

 

附一:《資料結構》課本原始碼《▲課本演算法實現》目錄下的檔案組織方式,《▼配套習題解析》部分的組織方式與此類似,只不過每一章內部存放的是習題解析測試文件

 

附二:原始碼目錄組織(注意保持各檔案相對位置固定):

 

 

 

 

相關文章