資料結構
①動態陣列
陣列是乙個用來存放相同資料型別變數的容器
它是線性結構的一種
在定義之後開闢一塊下標從0開始的連續空間
它的空間由棧分配
先進後出(filo)
優點:得益於其開闢的空間連續,所以陣列隨機訪問性強,查詢速度快
缺點:同樣因為開闢空間的連續性,陣列的空間利用率不高
無法像鍊錶一樣方便大量的插入刪除操作
優點:對於大量的插入刪除操作能從容應對
空間利用率較高
缺點:訪問特別費時
③佇列它同樣是線性結構的一種
先進先出(fifo)
頭結點(front)和尾結點(rear),為了解決「假上溢」的現象而類似於收尾相連的環形,這也使得它的空間利用率進一步提高
它廣泛作業系統的緩衝區
④雜湊表(雜湊表)
能夠通過給定的關鍵字(key)的值直接訪問到具體對應的值 (value)的乙個資料結構
優點:因為鍵值對一一對應的關係,它的訪問速度很快
適用於快取資料
缺點:有時候衝突不可避免,通常的解決方法是利用雜湊函式,選擇除留取餘的辦法解決衝突
⑤集合set集合
集合中的元素不重複、無序性
list集合
元素可重複、有序性
map集合
它不是單個,而是成對的「鍵 + 值」
資料結構 對於棧的理解
棧的特點 棧的表示 判滿判空 入棧 push 出棧 pop 例 用乙個陣列實現兩個堆疊 鏈棧判空 入棧 push 出棧 pop 棧的應用舉例 化為字尾表示式 字尾表示式求值 在之前的學習中,我們經常聽說棧,比如 在對比for迴圈與遞迴時,遞迴可能會導致棧溢位。今天就讓我們對棧進行更加深入的 棧是限定...
資料結構的簡單理解(4)
總結 資料的邏輯結構 資料的儲存結構及資料的運算這三方面是乙個整體。孤立地去理解乙個方面,而不注意它們之間的聯絡是不可取的。邏輯結構可以分為 線性結構和非線性結構。對於一些現實資料項,在討論其資料結構時我們一般先看其邏輯結構是怎樣的,如果這些資料項是線性結構即每個資料項只有乙個前驅節點並且只有乙個後...
資料結構內容
1 基本概念 邏輯結構 儲存結構 演算法及三者之間的關係 演算法的特徵及設計目標 了解演算法時間 空間需求的大o表示法 2 向量 鍊錶 棧 隊 向量 順序表 鍊錶 靜態鍊錶 單鏈表 雙向鍊錶 迴圈鍊錶 及相關演算法 棧 隊,了解其應用,理解遞迴 串及c語言中串的表示 串的模式匹配演算法 了解多維陣列...