資料結構內容

2021-08-26 22:34:36 字數 3384 閱讀 9786

1、 基本概念

邏輯結構、儲存結構、演算法及三者之間的關係

演算法的特徵及設計目標

了解演算法時間、空間需求的大o表示法

2、 向量、鍊錶、棧、隊

向量(順序表)、鍊錶(靜態鍊錶、單鏈表、雙向鍊錶、迴圈鍊錶)及相關演算法

棧、隊,了解其應用,理解遞迴

串及c語言中串的表示

串的模式匹配演算法

了解多維陣列的行優先和列優先的順序儲存

了解特殊矩陣(如上、下三角矩陣)的一維陣列儲存

3、 樹和二叉樹

樹(森林)、二叉樹及其性質;兩者的對應關係

二叉樹的llink-rlink和

完全二叉樹

的順序儲存法

二叉樹遍歷

赫夫曼(huffman)樹的構造及應用

4、 圖

圖(網)的概念及其鄰接矩陣和鄰接表儲存法

圖的遍歷、最小生成樹、最短路徑、拓撲排序、關鍵路徑等演算法

5、 查詢

順序查詢、二分查詢

二叉排序樹、平衡二叉排序樹及插入、刪除時的平衡方法b-

樹、b+樹

雜湊(hash)表

了解查詢成功及失敗的平均查詢長度

6、 內部排序

排序的概念及相關術語

「插入」、「希爾」、「起泡」、「快速」、「選擇」、「堆」、「歸併」、「基數」等排序演算法

了解上述排序演算法的時間複雜度、空間複雜度、穩定性

了解上述部分排序演算法的適用場合

******************************===

(資料結構(c語言版))(嚴蔚敏 & 吳偉民)

目錄

第1章 緒論

1.1 什麼是資料結構

1.2 基本概念和術語

1.3 抽象資料型別的表現與實現

1.4 演算法和演算法分析

第2章 線性表

2.1 線性表的型別定義

2.2 線性表的順序表示和實現

2.3 線性表的鏈式表示和實現

2.4 一元多項式的表示及相加

第3章 棧和佇列

3.1 棧

3.2 棧的應有和舉例

3.3 棧與遞迴的實現

3.4 佇列

3.5 離散事件模擬

第4章 串

4.1 串型別的定義

4.2 串的表示和實現

4.3 串的模式匹配演算法

4.4 串操作應用舉例

第5章 陣列和廣義表

5.1 陣列的定義

5.2 陣列的順序表現和實現

5.3 矩陣的壓縮儲存

5.4 廣義表的定義

5.5 廣義表的儲存結構

5.6 m元多項式的表示

5.7 廣義表的遞迴演算法第6章 樹和二叉樹

6.1 樹的定義和基本術語

6.2 二叉樹

6.2.1 二叉樹的定義

6.2.2 二叉樹的性質

6.2.3 二叉樹的儲存結構

6.3 遍歷二叉樹和線索二叉樹

6.3.1 遍歷二叉樹

6.3.2 線索二叉樹

6.4 樹和森林

6.4.1 樹的儲存結構

6.4.2 森林與二叉樹的轉換

6.4.3 樹和森林的遍歷

6.5 樹與等價問題

6.6 赫夫曼樹及其應用

6.6.1 最優二叉樹(赫夫曼樹)

6.6.2 赫夫曼編碼

6.7 回溯法與樹的遍歷

6.8 樹的計數

第7章 圖

7.1 圖的定義和術語

7.2 圖的儲存結構

7.2.1 陣列表示法

7.2.2 鄰接表

7.2.3 十字鍊錶

7.2.4 鄰接多重表

7.3 圖的遍歷

7.3.1 深度優先搜尋

7.3.2 廣度優先搜尋

7.4 圖的連通性問題

7.4.1 無向圖的連通分量和生成樹

7.4.2 有向圖的強連通分量

7.4.3 最小生成樹

7.4.4 關節點和重連通分量

7.5 有向無環圖及其應用

7.5.1 拓撲排序

7.5.2 關鍵路徑

7.6 最短路徑

7.6.1 從某個源點到其餘各頂點的最短路徑

7.6.2 每一對頂點之間的最短路徑

第8章 動態儲存管理

8.1 概述

8.2 可利用空間表及分配方法

8.3 邊界標識法

8.3.1 可利用空間表的結構

8.3.2 分配演算法

8.3.3 **演算法

8.4 夥伴系統

8.4.1 可利用空間表的結構

8.4.2 分配演算法

8.4.3 **演算法

8.5 無用單元收集

8.6 儲存緊縮

第9章 查詢

9.1 靜態查詢表

9.1.1 順序表的查詢

9.1.2 有序表的查詢

9.1.3 靜態樹表的查詢

9.1.4 索引順序表的查詢

9.2 動態查詢表

9.2.1 二叉排序樹和平衡二叉樹

9.2.2 b樹和b+樹

9.2.3 鍵樹

9.3 雜湊表

9.3.1 什麼是雜湊表

9.3.2 雜湊函式的構造方法

9.3.3 處理衝突的方法

9.3.4 雜湊表的查詢及其分析

第10章 內部排序

10.1 概述

10.2 插入排序

10.2.1 直接插入排序

10.2.2 其他插入排序

10.2.3 希爾排序

10.3 快速排序

10.4 選擇排序

10.4.1 簡單選擇排序

10.4.2 樹形選擇排序

10.4.3 堆排序

10.5 歸併排序

10.6 基數排序

10.6.1 多關鍵字的排序

10.6.2 鏈式基數排序

10.7 各種內部排序方法的比較討論

第11章 外部排序

11.1 外存資訊的訪問

11.2 外部排序的方法

11.3 多路平衡歸併的實現

11.4 置換一選擇排序

11.5 最佳歸併樹

第12章 檔案

12.1 有關檔案的基本概念

12.2 順序檔案

12.3 索引檔案

12.4 isam檔案和vsam檔案

12.4.1 isam檔案

12.4.2 vsam檔案

12.5 直接訪問檔案(雜湊檔案)

12.6 多關鍵字檔案

12.6.1 多重表檔案

12.6.2 倒排檔案

附錄a 名詞索引

附錄b 函式索引

參考書目 

資料結構內容

如何把現實中大量而複雜的問題以特定的資料型別和特定的儲存結構儲存到主儲存器 記憶體 中,以及在此基礎上為實現某個功能 比如查詢某個元素,刪除某個元素,對所有元素進行排序 而執行的相應操作,這個相應的操作也叫演算法 1.時間複雜度 大概程式要執行的次數,而非執行的時間 2.空間複雜度 演算法執行過程中...

資料結構 資料結構的起源和研究內容

1,本文論述資料結構的起源和資料結構研究內容 2,高手往往能夠看到初學者看不到的問題 3,為什麼有程式存在 1,程式是為了解決實際問題而存在的 2,從本質上講,程式是解決問題的步驟描述 有了這些步驟,計算機照做就可以了 4,理解實際問題 1,確認問題型別 1,如 數值計算,求最小值個數,排序等 2,...

1 資料結構的內容

在資料結構課程的資料結構總共可以分為三大部分 資料的邏輯結構,資料的儲存結構,資料運算。圖1 資料結構課程的結構 資料的邏輯結構通常指的是我們以人類的思維方式來看待資料是什麼樣的,然後可以針對資料設計乙個數學模型,而當我們用程式設計去解決這個問題的時候,必須要解決資料在計算機中儲存的問題。也就是說當...