Chapter 01 介紹
1.1 引言
1.2 運算思維
1.3 電腦科學領域
1.4 資料型態的種類
1.5 資料結構的定義
1.6 資料與資訊
Chapter 02 時間複雜度
2.1 基本概念
2.2 函數的分類與排序
2.3 漸近表示法
2.4 演算法的時間複雜度
Chapter 03 Python 資料結構
3.1 基本概念
3.2 串列
3.3 元組
3.4 集合
3.5 字典
Chapter 04 陣列
4.1 基本概念
4.2 一維陣列
4.3 二維陣列
4.4 時間複雜度
4.5 陣列的應用
4.6 多項式運算
4.7 雞兔同籠
4.8 魔術方塊
4.9 數獨
4.10 n-皇后問題
4.11 騎士巡邏問題
4.12 數位訊號
4.13 數位影像
4.14 股價趨勢圖
Chapter 05 鏈結串列
5.1 基本概念
5.2 單向鏈結串列
5.3 雙向鏈結串列
5.4 環狀鏈結串列
5.5 時間複雜度
5.6 鏈結串列的應用
5.7 多項式運算
5.8 桶子排序
Chapter 06 堆疊與佇列
6.1 基本概念
6.2 堆疊
6.3 佇列
6.4 環狀佇列
6.5 雙向佇列
6.6 時間複雜度
6.7 堆疊與佇列的應用
6.8 迴文
6.9 迷宮問題
6.10 中序表示式轉後序表示式
Chapter 07 樹狀結構
7.1 基本概念
7.2 樹的專有名詞
7.3 樹的表示法
7.4 二元樹的走訪
7.5 二元搜尋樹
7.6 時間複雜度
7.7 樹狀結構的應用
7.8 二元樹排序
7.9 運算式樹
Chapter 08 堆積與優先佇列
8.1 基本概念
8.2 最大堆積
8.3 最小堆積
8.4 最大優先佇列
8.5 最小優先佇列
8.6 堆積佇列
8.7 時間複雜度
8.8 堆積與優先佇列的應用
8.9 堆積排序
Chapter 09 不相交集合
9.1 基本概念
9.2 不相交集合
9.3 時間複雜度
9.4 不相交集合的應用
9.5 迷宮產生器
9.6 連通元
Chapter 10 雜湊表
10.1 基本概念
10.2 雜湊表
10.3 雜湊表的基本操作
10.4 雜湊表的碰撞問題
10.5 雜湊表的插入
10.6 雜湊表的刪除
10.7 時間複雜度
10.8 雜湊表的應用
Chapter 11 圖形結構
11.1 基本概念
11.2 圖形的定義
11.3 圖形的種類
11.4 圖形表示法
11.5 圖形的專有名詞
11.6 廣度優先搜尋
11.7 深度優先搜尋
11.8 最小生成樹
11.9 最短路徑問題
11.10 歐拉旅途
11.11 哈密頓迴圈
Chapter 12 AVL樹
12.1 基本概念
12.2 AVL樹
12.3 AVL樹的旋轉操作
12.4 AVL樹的插入
12.5 AVL樹的刪除
12.6 時間複雜度
Chapter 13 B-樹
13.1 基本概念
13.2 2-3樹
13.3 2-3-4樹
13.4 時間複雜度
附錄 A
A.1 數學基本公式
A.2 ASCII表
A.3 參考文獻