一、關于數據結構計算機的日益擴大,其應用早已不局限于簡單的數值運算,而涉及到問題的分析、數據結構框架的設計以及插入、刪除、排序、查找等復雜的非數值處理和操作。數據結構的學習就是為以后從事非數值處理的程序設計打下堅實的理論、方法和技術基礎。數據結構是計算機專業(yè)的核心課程,是從事計算機軟件開發(fā)、應用人員必備的專業(yè)知識。隨著計算機的日益普及,掌握數據結構知識已經成為計算機相關專業(yè)的基本要求。數據結構旨在分析研究計算機加工的數據對象的特性,以便選擇適當的數據結構和存儲結構,從而使建立在其上的解決問題的算法達到最優(yōu)。二、結構安排全書共分為9章,保章主要內容如下:第1章:概述。主要介紹了數據結構的基本概念及研究對象,結合C++語言介紹了面向對象設計以及算法的相關概念。第2章:線性表。主要介紹了線性表的概念、線性表的抽象數據類型、循環(huán)鏈表等內容。第3章:棧和隊列。主要介紹了棧和隊列的定義及實現等內容。第4章:串和矩陳。主要介紹了串和矩陳的特殊性質和表示方法,以及在各種表示方法上的相關操作。第5章:遞歸。主要介紹了遞歸的概念、算法設計和實現以及廣義表等內容。第6章:樹和二叉樹。主機介紹了樹的有關概念、二叉樹的相關概念及應用、樹的表示、樹的遍歷,以及森林的二叉樹的表示和遍歷等內容。第7章:圖。主機介紹了圖的基本概念、圖的存儲結構及C++實現、圖的遍歷、圖的連通性問題、最短路徑、AOV網絡與拓撲排序以及AOE-網與關鍵路徑等內容。第8章:排序。主要介紹了排序的基本概念常用的5種最常用的查找方法:(插入、選擇、交換、歸并和基數)及它們的實現算法。第9章:查找。主機介紹了查找的基本概念,以及幾種最常用的查找方法:順序表查找、索引表查找、樹表查找和哈希表查找。附錄中收錄了兩套模擬試題,供讀者進行自我測試,并隊有參考答案和解析。三、本書特點本書是作者在多年的教學實踐的基礎上,參考了近年出版的多種數據結構類書籍編寫而成的。本書具有以下特點:(1)內容全面、系統(tǒng),實用性強。本書對每一種數據結構的不同存儲方法及有關算法進行了詳細的介紹。介紹了抽象數據結構的使用與基本的算法分析技術。書中使用了參數化的模板,提高了算法中數據類型的通用性,支持高效的代碼重用。本書內容全面、系統(tǒng),覆蓋了數據結構的主要研究,概念清晰,章節(jié)合理,邏輯性強。(2)敘述翔實,講練習結合。本書對重點設計思想介紹和分析時,結合了大量的圖解和具體的實例分析,使抽象的內容變得具體得不到,淺顯易懂,學習者能夠聯系實際,深刻地掌握數據結構的實質內容。數據結構的學習過程也是進行復雜程序設計的訓練過程,因此在整個教學過程中,習題和上機練習是兩個不可缺少的環(huán)節(jié)。本書在每章都設計了大量的有代表性的習題。并配有答案和解析。題目分為選擇、填空、問答和編程四種類型,題型全面,覆蓋面廣。對每道題目都有詳細的解析,有利于學習者鞏固所學的基本概念、基本方法,以及進行基本的程序設計技能訓練。通過學習和練習,使讀者能夠學會正確地選擇數據類型,針對實際問題編寫出符合程序規(guī)范的代碼,為應用程序的開發(fā)打下的基礎。四、適用對象本書可作為計算機專業(yè)、信息專業(yè)或其他相關專業(yè)的本、??平滩模彩菑V大參加自學考試的人員和軟件工作者的參考資料。本書既可作為“數據結構”課程的教材,也可作為其他程序類課程的輔導教材。本書主要由楊誼、喻德曠、要光明編寫,由于時間倉促,水平有限,書中難免有不足之處,敬請讀者指正。讀者如果有好的意見或建議,可以發(fā)E-mail到service@cnbook.net,也可以登錄網站http://www/cnbook.net,在該網站的論壇進行探討。