基礎篇 資料結構

2021-08-10 18:34:11 字數 863 閱讀 7202

是一種由節點組成的線性資料集合,每個節點通過指標指向下乙個節點。由節點組成,並能用於表示序列的資料結構。

迴圈鍊錶:每個節點指向下個節點,最後乙個節點指向頭結點。

排序:類別

排序方法

平均時間複雜度

穩定性 插入

排序 直接插入

o(n2)

穩定希爾排序

o(n1.3)

不穩定 選擇

排序 直接選擇

o(n2)

不穩定堆排序

o(n*log2n)

不穩定 交換

排序 氣泡排序

o(n2)

穩定快速排序

o(n*log2n)

不穩定歸併排序

o(n*log2n)

穩定基數排序

o(d(r+n)) 穩定

乙個元素集合,支援兩種基本操作:enqueue用於新增乙個 元素到佇列,dequeue用於刪除佇列中的乙個元素。

特點:先進先出

乙個元素集合,支援兩個基本操作:push用於將元素壓入棧,pop用於刪除棧頂元素。

特點:先進後出

樹是無向,聯通的無環圖。

二叉樹是乙個樹形資料結構,每個節點最多有兩個子節點,成為左節點,右節點。

滿二叉樹:二叉樹中的每個節點都有0個或者2個節點。

完美二叉樹:二叉樹的每到個節點都有兩個子節點,並且每個葉子節點

完全二叉樹:二叉樹中除了最後一層其他層的節點樹均達到最大值,最後一層的子節點全部連續集中在左側。

堆是一種基於樹的滿足某些特徵的資料結構:整個堆中的所有父子節點的鍵值都滿足相同的排序條件。

堆分最大堆和最小堆。

最大堆中,父節點的鍵值永遠大於大於等於多有子節點的鍵值。

含淚總結篇 資料結構 陣列

系列文章 什麼是資料結構?什麼是演算法?資料結構 陣列 資料結構 鍊錶 資料結構 棧 資料結構 佇列 資料結構 排序 上篇文章說到了什麼是資料結構什麼是演算法,大家有興趣的可以去看下,我也在不斷的完善中。大吉大利。關係 資料結構和演算法的關係 重點是什麼?了解下陣列 線性表。連續的記憶體空間和相同的...

含淚總結篇 資料結構 佇列

系列文章 什麼是資料結構?什麼是演算法?資料結構 陣列 資料結構 鍊錶 資料結構 棧 資料結構 佇列 資料結構 排序 優勢 陣列或鍊錶暴露了太多的操作介面,不適合特點的場景下的安全和可控情況。實現 用陣列實現的佇列 public class arrayqueue 入隊操作,將 item 放入隊尾 p...

演算法篇 資料結構的儲存方式

資料結構的儲存方式只有兩種 陣列 順序儲存 和鍊錶 鏈式儲存 佇列 棧既這兩種資料結構可以使用陣列實現也可以使用鍊錶實現。樹用陣列實現就是堆,因為堆是乙個完全二叉樹,用陣列儲存不需要指標,操作也比較簡單 用鍊錶實現就是很常見的那種樹,因為不一定是完全二叉樹,所以不適用陣列儲存。為此,在這種鍊錶樹結構...