Summary Day22

數據結構與算法

1、數據結構的概念和分類

1.1 基本的概念
在計算機中,數據結構就是指計算機描述和存儲數據的方式
主要描述數據元素之間的邏輯關係以及計算機存儲形式

空間複雜度,時間複雜度
計算機程序 = 數據結構 + 算法
1.2 基本的分類/層次結構
(1)邏輯結構 - 抽象層
主要描述數據結構元素之間的邏輯關係
(2)物理結構 - 結構層
主要描述數據元素之間的位置關係以及存儲形式
(3)運算結構 - 實現層
主要描述如何實現該結構以及該結構的基本操作

1.3 邏輯結構的分類
(1)集合結構
(2)線性結構   前趨與後繼
(3)樹形結構   根、葉子
(4)網狀結構

1.4 物理結構
(1)順序存儲結構
一組連續的存儲區,可使用C語言的數組描述
(2)鏈式存儲結構
不連續存儲單元,可用結構體鏈表實現

1.5  邏輯結構和物理結構的關係
每種邏輯結構採用何種物理結構來實現並沒有明確規定
甚至某些特性情況下,同一種邏輯結構可能需要多種物
        理結構配合來實現

1.6 運算結構
(1)創建 與 銷燬
分配資源實現創建 => 建立數據結構 =>銷燬佔用資源
(2)插入 和 刪除
向數據結構中增加元素 和 從數據結構中減少元素
(3)修改 和 查找 以及 排序
修改元素的值 使用查找算法 和 排序算法

---------------------------------------------------------------------

2. 堆棧(stack)的基本特徵和實現
2.1 基本特徵 
具有後進先出特徵的數據結構叫做堆棧
  LIFO(last in first out)
堆棧是隻能在一端增刪元素的數據結構,該位置稱爲棧頂
2.2基本操作
創建(creat)\   銷燬(destroy) \    入棧(push)
出棧(pop) \    遍歷(travel)  \   判斷是否爲滿(full)
判斷棧是否爲空(empty)  \  計算棧中元素的個數(size)
查看棧頂元素值(peek)
2.3 基於順續存儲結構的實現
  。。。。。。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章