“數(shù)據(jù)結(jié)構(gòu)”是計算機及相關(guān)專業(yè)的一門專業(yè)必修核心課程,在整個計算機科學體系中占有重要地位。全書共包括9個項目,分別是認識數(shù)據(jù)結(jié)構(gòu)與算法、線性表、棧和隊列、串、數(shù)組和廣義表、樹和二叉樹、圖、查找以及排序。本書將每一個項目的實現(xiàn)過程分成了多個任務,而每個任務又包括若干子任務,通過對實際任務的分析,建立合適的邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),并選擇和使用較好的數(shù)據(jù)處理方法,以編寫出相應的算法,把真實的企業(yè)工作任務與理論知識進行有機的結(jié)合。
本書適合作為計算機類專業(yè)或信息類相關(guān)專業(yè)的?平滩,也可供從事計算機工程與應用工作的科技工作者參考。
“數(shù)據(jù)結(jié)構(gòu)”是計算機及相關(guān)專業(yè)的一門專業(yè)必修核心課程,在整個計算機科學體系中占有重要地位,也是全國計算機專業(yè)研究生考試的一門專業(yè)基礎課程,是培養(yǎng)程序員、軟件設計師、系統(tǒng)分析師的一門重要課程。數(shù)據(jù)結(jié)構(gòu)課程涉及多方面的知識,如計算機硬件方面的存儲裝置與存取方法,軟件方面的文件系統(tǒng),數(shù)據(jù)的動態(tài)管理,信息檢索、數(shù)據(jù)表示,云計算與大數(shù)據(jù)等。數(shù)據(jù)結(jié)構(gòu)課程也是后繼課程如操作系統(tǒng)、數(shù)據(jù)庫原理、編譯原理、人工智能、云計算與大數(shù)據(jù)等課程的先修課程。數(shù)據(jù)結(jié)構(gòu)課程不僅講授數(shù)據(jù)在計算機中的組織與表示方法及相關(guān)運算,更重要的是培養(yǎng)學生提高分析問題和解決問題的能力,培養(yǎng)良好的計算機科學的職業(yè)素養(yǎng)。
本書包括9個項目、28個任務、80個子任務,在內(nèi)容的組織上,本著由淺入深、循序漸進的原則,注重實踐能力的培養(yǎng)。對難度過大的知識或?qū)嵺`中運用較少的知識只做少量的介紹,使學生有重點地掌握所學內(nèi)容。職業(yè)教育的目標是培養(yǎng)高素質(zhì)技能型人才,以強化應用為特點,培養(yǎng)學生具有可持續(xù)發(fā)展的能力。通過本書的學習,學生既完成了知識的學習,也形成了相應的能力。項目、任務驅(qū)動有利于學生從整體意義上完成實際的工作任務,從而提高學生的學習興趣。
本書的特點如下。
1項目任務式學習體系
本書將每個項目的實現(xiàn)過程分成了多個任務,而每個任務又包括多個子任務,通過對實際任務的分析,建立合適的邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),并選擇和使用較好的數(shù)據(jù)處理方法,以編寫出相應的算法,把真實的企業(yè)工作任務與理論知識進行有機的結(jié)合。讀者只要把每個子任務完成,就能完成相應的任務,然后完成相應的項目。
2豐富的實踐知識
對本書中的每個任務,作者都盡可能用完整的程序設計語言實現(xiàn),讀者根據(jù)這些完整的程序,就能實現(xiàn)相應的任務,從而幫助讀者進一步理解與鞏固。
3項目、任務典型化
本書所編寫的項目和任務以典型任務為依托,涵蓋數(shù)據(jù)結(jié)構(gòu)知識點和常見的算法。對算法進行了剖析,并給出程序的運行結(jié)果,以幫助讀者進行分析、理解和實踐。
4抽象知識具體化
本書力求通過通俗的語言,把數(shù)據(jù)結(jié)構(gòu)中晦澀的理論知識具體化,用簡明扼要的語言進行敘述。
由于作者水平有限,書中難免存在一些不足之處,懇請讀者批評指正。
編者