全書以Java 為基礎(chǔ),將面向?qū)ο蟮乃枷肴谌霐?shù)據(jù)結(jié)構(gòu)設(shè)計和算法設(shè)計之中,通過精選基礎(chǔ)理論內(nèi)容、降低理論難度和抽象性、加強(qiáng)實(shí)踐環(huán)節(jié)等措施來提高學(xué)生的面向?qū)ο蟪绦蛟O(shè)計理論知識水平和增強(qiáng)學(xué)生實(shí)踐操作的能力,并力求以全國計算機(jī)等級考試大綱中對于數(shù)據(jù)結(jié)構(gòu)與算法的考核知識點(diǎn)為基準(zhǔn),來組織和設(shè)計教材。同時,基于Java語言已經(jīng)提供了諸如棧、隊列、鏈表、字符串、數(shù)組、集合等內(nèi)置數(shù)據(jù)結(jié)構(gòu)的狀況,并兼顧大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)技術(shù)等新專業(yè)方向?qū)Φ乩砦恢谩D像、視頻等數(shù)據(jù)處理的需要,本書強(qiáng)化了諸如串、矩陣、廣義表、樹和圖等數(shù)據(jù)結(jié)構(gòu)的設(shè)計和應(yīng)用,從而為新興的技術(shù)應(yīng)用提供更多的支持。本書以面向高等職業(yè)院校的學(xué)生為主,兼顧計算機(jī)等級考試者、計算機(jī)愛好者的需求,立足于把數(shù)據(jù)結(jié)構(gòu)的基本概念和基本算法講清楚,講透徹。為了方便教學(xué),本書還配有電子課件等教學(xué)資源包,任課教師和學(xué)生可以登錄我們愛讀書網(wǎng)(www.ibook4us.com)注冊并瀏覽,任課教師還可以發(fā)郵件至hustpeiit@163.com索取。
全書以Java 為基礎(chǔ),將面向?qū)ο蟮乃枷肴谌霐?shù)據(jù)結(jié)構(gòu)設(shè)計和算法設(shè)計之中,通過精選基礎(chǔ)理論內(nèi)容、降低理論難度和抽象性、加強(qiáng)實(shí)踐環(huán)節(jié)等措施來提高學(xué)生的面向?qū)ο蟪绦蛟O(shè)計理論知識水平和增強(qiáng)學(xué)生實(shí)踐操作的能力,并力求以全國計算機(jī)等級考試大綱中對于數(shù)據(jù)結(jié)構(gòu)與算法的考核知識點(diǎn)為基準(zhǔn),來組織和設(shè)計教材。同時,基于Java語言已經(jīng)提供了諸如棧、隊列、鏈表、字符串、數(shù)組、集合等內(nèi)置數(shù)據(jù)結(jié)構(gòu)的狀況,并兼顧大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)技術(shù)等新專業(yè)方向?qū)Φ乩砦恢、圖像、視頻等數(shù)據(jù)處理的需要,本書強(qiáng)化了諸如串、矩陣、廣義表、樹和圖等數(shù)據(jù)結(jié)構(gòu)的設(shè)計和應(yīng)用,從而為新興的技術(shù)應(yīng)用提供更多的支持。
全書以Java 為基礎(chǔ),將面向?qū)ο蟮乃枷肴谌霐?shù)據(jù)結(jié)構(gòu)設(shè)計和算法設(shè)計之中,通過精選基礎(chǔ)理論內(nèi)容、降低理論難度和抽象性、加強(qiáng)實(shí)踐環(huán)節(jié)等措施來提高學(xué)生的面向?qū)ο蟪绦蛟O(shè)計理論知識水平和增強(qiáng)學(xué)生實(shí)踐操作的能力,并力求以全國計算機(jī)等級考試大綱中對于數(shù)據(jù)結(jié)構(gòu)與算法的考核知識點(diǎn)為基準(zhǔn),來組織和設(shè)計教材。同時,基于Java語言已經(jīng)提供了諸如棧、隊列、鏈表、字符串、數(shù)組、集合等內(nèi)置數(shù)據(jù)結(jié)構(gòu)的狀況,并兼顧大數(shù)據(jù)技術(shù)、物聯(lián)網(wǎng)技術(shù)等新專業(yè)方向?qū)Φ乩砦恢、圖像、視頻等數(shù)據(jù)處理的需要,本書強(qiáng)化了諸如串、矩陣、廣義表、樹和圖等數(shù)據(jù)結(jié)構(gòu)的設(shè)計和應(yīng)用,從而為新興的技術(shù)應(yīng)用提供更多的支持。
本書的主要特點(diǎn)如下。
(1) 教學(xué)定位清楚,本書以面向高等職業(yè)院校的學(xué)生為主,兼顧計算機(jī)等級考試者、計算機(jī)愛好者的需求,立足于把數(shù)據(jù)結(jié)構(gòu)的基本概念和基本算法講清楚,講透徹。
(2) 教學(xué)內(nèi)容先進(jìn),全書以Java 語言為工具,用面向?qū)ο蟮乃枷雭砻枋龈鞣N數(shù)據(jù)結(jié)構(gòu)的定義和相關(guān)操作算法的實(shí)現(xiàn)。
(3) 教學(xué)目標(biāo)明確,知識結(jié)構(gòu)完整。在教學(xué)內(nèi)容安排方面強(qiáng)調(diào)既要方便教學(xué),又要方便自學(xué),因此針對數(shù)據(jù)結(jié)構(gòu)的基本算法提供完整的Java源代碼實(shí)現(xiàn)。
(4) 教學(xué)理念先進(jìn),堅持以應(yīng)用為綱,避免了傳統(tǒng)數(shù)據(jù)結(jié)構(gòu)教材重理論輕實(shí)用的弊端,因此本書針對每種數(shù)據(jù)結(jié)構(gòu)的講解都特別突出了對應(yīng)數(shù)據(jù)結(jié)構(gòu)的應(yīng)用與教學(xué)做一體化設(shè)計,后還配置了一個綜合實(shí)訓(xùn)項(xiàng)目。
為了方便教學(xué),本書還配有電子課件等教學(xué)資源包,任課教師和學(xué)生可以登錄我們愛讀書網(wǎng)(www.ibook4us.com)注冊并瀏覽,任課教師還可以發(fā)郵件至hustpeiit@163.com索取。
由于本書在總體內(nèi)容策劃及實(shí)現(xiàn)方法方面做了一些新嘗試,加之作者水平有限,時間倉促,因此本書中難免有錯誤和遺漏之處,敬請讀者和同行予以批評指正。
項(xiàng)目1導(dǎo)論/1
任務(wù)1課程的初步認(rèn)識/1
任務(wù)2數(shù)據(jù)結(jié)構(gòu)中常用的術(shù)語與概念/3
任務(wù)3數(shù)據(jù)類型及面向?qū)ο蟮母拍?5
任務(wù)4算法/9
項(xiàng)目2線性表/14
任務(wù)1線性表的相關(guān)概念及抽象數(shù)據(jù)類型/14
任務(wù)2順序表/17
任務(wù)3單鏈表/25
項(xiàng)目3堆棧/39
任務(wù)1棧的相關(guān)概念及抽象數(shù)據(jù)類型/39
任務(wù)2順序棧/41
任務(wù)3鏈棧/46
項(xiàng)目4隊列/53
任務(wù)1隊列的相關(guān)概念及抽象數(shù)據(jù)類
型/53
任務(wù)2鏈隊列/55
任務(wù)3循環(huán)隊列/62
項(xiàng)目5串/70
任務(wù)1串的相關(guān)概念/70
任務(wù)2串的存儲與基本運(yùn)算實(shí)現(xiàn)/71
項(xiàng)目6數(shù)組、矩陣和集合/78
任務(wù)1認(rèn)識數(shù)組/78
任務(wù)2矩陣/81
任務(wù)3集合/86
項(xiàng)目7廣義表/93
任務(wù)1廣義表的相關(guān)概念及抽象數(shù)據(jù)類型/93
任務(wù)2廣義表的存儲結(jié)構(gòu)/95
任務(wù)3廣義表的基本運(yùn)算/96
項(xiàng)目8樹與二叉樹/99
任務(wù)1樹/99
任務(wù)2二叉樹/101
任務(wù)3樹、樹林與二叉樹/119
任務(wù)4樹與樹林的遍歷/121
項(xiàng)目9圖/125
任務(wù)1圖的相關(guān)概念及其抽象數(shù)據(jù)類
型/125
任務(wù)2圖的存儲方式/128
任務(wù)3圖的遍歷/132
任務(wù)4圖的應(yīng)用/138
項(xiàng)目10查找/152
任務(wù)1查找簡介/152
任務(wù)2常用見查找方法/153
項(xiàng)目11排序/162
任務(wù)1排序簡介/162
任務(wù)2內(nèi)部排序法/163
任務(wù)3外部排序法/178
項(xiàng)目12綜合實(shí)訓(xùn)/180
參考文獻(xiàn)/186