Showing posts with label DataStructure. Show all posts
Showing posts with label DataStructure. Show all posts
[C][資料結構] 06-堆疊-後序表示法
06-堆疊-後序表示法
https://drive.google.com/open?id=0B1cXVSjadhC0WThhY25ZUzFCYlk
https://drive.google.com/open?id=0B1cXVSjadhC0WThhY25ZUzFCYlk
|
中序(Infix)
|
前序(Prefix)
|
後序(Postfix)
|
|
A*B+C
|
+*ABC
|
AB*C+
|
|
人類易讀
|
|
計算機不用考慮運算子的優先順序,讀取後立即執行運算
|
|
中序(Infix)
|
A*(B+C)
|
A+B*(C+D)-E
|
6*7+(4+5)
|
|
轉換過程
|
A(BC+)*
ABC+*
|
A+(B(CD+)*)-E
(AB(CD+)*+)-E
(AB(CD+)*+)E-
ABCD+*+E-
|
(67*)+(45+)
67*45++
|
|
後序(Postfix)
|
ABC+*
|
ABCD+*+E-
|
67*45++
|
[C][資料結構] 02-鏈結串列(Linked List)基本介紹
鏈結串列(Linked List)基本介紹
https://drive.google.com/open?id=0B1cXVSjadhC0VG16bE5hbU44UVk
https://drive.google.com/open?id=0B1cXVSjadhC0VG16bE5hbU44UVk
Array 陣列
|
Struct 結構
|
Linked List 鏈結串列
|
|
資料型態
|
多筆、同類型的資料
|
單筆、不同類型的資料
|
多筆、不同類型的資料
(相同結構的多個結構變數)
|
記憶體配置
(資料筆數)
|
固定大小(固定筆數)
靜態資料結構(static)
無效率
|
動態配置
動態資料結構(dynamic)
可彈性修改
有效率
|
|
要件
|
必須事先得知資料個數
|
可任意增減,不必事先知道
資料個數
|
|
資料存取
|
可利用索引值存取任意元素
|
必須一一走訪每個節點
|
|
資料增刪
|
陣列大小固定,難以增刪,尤其多維陣列更難以處理資料的增刪
|
只需更改指標指向,不必搬移元素,增刪容易而具有彈性
|
Subscribe to:
Posts (Atom)