通過本課程的學習,學生將基本掌握數(shù)據(jù)結(jié)構(gòu)和算法基礎知識、設計與分析的技術(shù)和方法,提高程序設計的質(zhì)量;能夠根據(jù)所求問題的性質(zhì),選擇合理的數(shù)據(jù)結(jié)構(gòu),并對時間復雜性進行必要的控制。培養(yǎng)運用數(shù)據(jù)結(jié)構(gòu)表示實際問題并設計有效算法解決實際問題的能力。為后續(xù)課程的學習和將來從事的研究工作打下扎實的基礎。
【課程內(nèi)容】
第1講 緒論
數(shù)據(jù)結(jié)構(gòu)定義、抽象數(shù)據(jù)型、算法分析
算法的逐步求精、緒論總結(jié)、線性表的順序表示
第2講 線性表
線性表的鏈式表示及應用
棧及應用
隊列及應用、串及匹配算法
多維數(shù)組、廣義表
第3講 樹
樹的基本術(shù)語;二叉樹的性質(zhì)及遍歷
二叉樹表示及遍歷的實現(xiàn)(前序、中序、后序)
線性表的基本實驗
二叉樹的層序遍歷、線索二叉樹、樹的基本操作及遍歷
樹的存儲、森林與二叉樹的轉(zhuǎn)換、集合表示樹
判定樹、哈夫曼樹、表達式求值
第4講 圖
圖的定義、存儲、操作
圖的搜索、圖與樹的關(guān)系、最小生成樹
最小生成樹具體算法、最短路徑問題
二叉樹遍歷與應用
拓撲排序、關(guān)鍵路徑、線性查找
第5講 查找
二叉查找樹、AVL樹
圖的搜索及應用
B-樹、散列查找、散列函數(shù)
沖突處理、內(nèi)排序概念
第6講 排序
內(nèi)排序方法:氣泡、快速、直接選擇、堆排、直接插入
希爾排序、二路歸并、基數(shù)排序、排序方法總結(jié)