數據結構是研究計算機科學和工程的基礎,數據結構課程是計算機科學與技術專業(yè)及相關專業(yè)的核心課程之一,學好該課程不僅對后續(xù)課程的學習有很大幫助,而且對開發(fā)有效利用計算機資源的程序極為有益。
計算機是進行數據處理的工具,數據結構主要研究數據的各種組織形式以及建立在這些結構上的各種運算算法的實現,它不僅為用計算機語言進行程序設計提供了方法性的理論指導,還在更高的層次上總結了程序設計的常用方法和常用技巧。
本書是編者針對數據結構課程概念多、算法靈活和抽象性強等特點,在總結長期教學經驗的基礎上編寫的。全書分為12章和5個附錄,第1章為緒論,介紹數據結構的基本概念,特別強調算法分析的方法; 第2章為線性表,介紹線性表的兩種存儲結構順序表和鏈表,以及基本運算算法的實現過程; 第3章為棧和隊列,介紹這兩種特殊的線性結構的概念與應用; 第4章為串,介紹串的概念與模式匹配算法; 第5章為遞歸,討論計算機學科中遞歸算法的設計方法; 第6章為數組和廣義表,介紹數組、稀疏矩陣和廣義表的概念與相關運算算法的實現過程; 第7章為樹和二叉樹,介紹樹和二叉樹的概念與各種運算算法的實現過程,其中特別介紹二叉樹的各種遞歸算法方法; 第8章為圖,介紹圖的概念和圖的各種運算算法的實現過程; 第9章為查找,介紹各種查找算法的實現過程; 第10章為內排序,介紹各種內排序算法的實現過程; 第11章為外排序,介紹各種外排序算法的實現過程; 第12章為采用面向對象的方法描述算法,介紹面向對象的概念和采用C 語言描述數據結構算法的方法。
附錄A給出了實驗報告格式; 附錄B是引用型參數和指針引用型參數的說明; 附錄C給出了書中全部算法的索引; 附錄D給出了書中相關名詞的索引; 附錄E為教育頒布的2022年全國計算機專業(yè)碩士研究生入學考試專業(yè)課中的數據結構部分考試大綱。標注*的知識點作為選學內容。
數據結構是一門應用實踐性非常強的課程,學生在掌握各種數據結構(特別是存儲結構)的基礎上一定要盡可能多地上機實習,通過較多的實驗把難以理解的抽象概念轉化為實實在在的能夠在計算機上執(zhí)行的程序,這樣才能將所學知識和實際應用結合起來,吸取算法的設計思想和精髓,提高運用這些知識解決實際問題的能力。因此,本書突出上機實習內容,書中給出了大量的上機實驗題(分為驗證性實驗、設計性實驗和綜合性實驗),同時按各章知識點精選了若干LeetCode網站(http://leetcodecn.com)的在線編程題(題目的難度用1~3星表示,分別對應簡單、中等和困難三個級別)供教師和學生選用。
為了便于學生學習和上機實驗,編者還編寫了與本書配套的《數據結構教程(第6版)學習指導》《數據結構教程(第6版)上機實驗指導》和《數據結構LeetCode在線編程實訓(C/C 語言)全程視頻講解版》三本書,構成一個完整的教學系列。本系列教程中的所有程序均在Dev C 5和Visual C 6.0環(huán)境(程序文件為*.cpp)下調試通過。
為了方便教師教學和學生學習,本書提供了全面而豐富的教學資源,配套教學資源包的內容如下。
(1) 教學課件(PPT): 提供全部教學內容的精美PPT,供任課教師教學中使用。
(2) 思政教學課件(PPT): 提供包含思政教學內容的精美PPT,供任課教師教學中使用。
(3) 教學大綱和電子教案: 包含數據結構課程支撐的各個畢業(yè)要求指標點,課程介紹、教學目的、課程內容和學時分配(72學時),每個課時的教學內容安排。
(4) 實驗教學大綱: 包含課程教學介紹、教學目的、實驗基本要求與方式、實驗報告、課程內容與學時(36學時)分配。
(5) 程序源碼: 所有源代碼按章組織,例如第3章文件夾存放第3章的全部源代碼,其中第3章\algorithm37.cpp為例3.7的源代碼。
(6) 微課視頻: 書中配套有絕大部分知識點的教學視頻,視頻采用微課碎片化形式組織(總時長超過50小時)。
(7) 在線作業(yè): 包括選擇題、判斷題、填空題、簡答題和編程題。
(8) 附錄E除了2022年全國計算機聯(lián)考數據結構部分大綱外,還包含20182021年全國計算機專業(yè)研究生入學聯(lián)考數據結構部分試題的講解視頻。
資源下載提示
課件等資源: 掃描封底的課件下載二維碼,在公眾號書圈下載。
素材(源碼)等資源: 掃描目錄上方的二維碼下載。
在線作業(yè): 掃描封底的作業(yè)系統(tǒng)二維碼,登錄網站在線做題及查看答案。
視頻等資源: 掃描封底的文泉云盤防盜碼,再掃描書中相應章節(jié)中的二維碼,可以在線學習。
本書和配套的上機實驗指導、學習指導的編寫得到了武漢大學弘毅學堂數據結構榮譽課程教學項目和湖北省計算機科學與技術專業(yè)課程體系
改革項目的資助,聚集了課程組許多教師多年來在數據結構課程教學研究和教學改革中的經驗與成果。本書在編寫過程中得到了王麗娜、黃傳河和吳黎兵等多位教授、博導的大力支持,陳國良院士提供了富有建設性的指導,很多使用本書的老師和同學給予了熱心幫助,并與清華大學出版社的魏江江分社長和王冰飛編輯進行了愉快的合作,除了署名作者外,課程組的汪鼎文、安楊、李蓉蓉、文衛(wèi)東、李小紅、何璐璐、夏啟明等老師也參與了大量的課程探討和教學實踐工作。編者在此一并表示衷心的感謝。
由于編者水平所限,盡管不遺余力,書中仍存在不足之處,敬請讀者批評指正。
編者
2022年5月