--------------------------
資料結構
--------------------
資料結構分 線性資料結構給非線性資料結構
資料和結合
線性表(順序儲存方式)特點:有且僅有乙個開始結點和乙個終結結點,
內部任意結點均只有乙個前驅結點和乙個後繼結點,且具備增刪改查的功能
線性表的順數儲存 :陣列
線性表鏈式儲存:單鏈表
棧 堆疊 資料 遵循後進先出 lifo 規則
入口 稱為 棧頂(棧頂元素) 底部稱為 棧底(棧底元素)
把資料新增到堆疊中 叫做進棧操作
從棧中吧資料取出來稱為退棧/出棧操作
佇列先進先出 fifo 運算規則
順序佇列和鏈式佇列
順序佇列 佇列的順序儲存結構 front => 隊頭 rear =》 隊尾
鏈式佇列 是由乙個乙個節點連線的 指向下乙個節點
單鏈表 先進先出
遞迴是一種直接或者間接呼叫自身的程式設計思想
使用遞迴演算法必須包含遞迴呼叫 和 遞迴的終止條件
樹和二叉樹 非線性結構
最高端的只有直接前驅界定啊 最底層只有 直接後繼節點
每個樹的子節點不超過2的 就叫做二叉樹
轉換規則 子節點轉換左子樹 兄弟節點轉換成右子樹
樹、根、子樹、度、葉節點、層、父、子、兄弟節點、邊、路徑、高
二叉樹的組織方式和儲存結構
順序儲存 適合於滿二叉樹和完全二叉樹
鏈式儲存 單鏈表 用指標鏈結 左孩子域 資料域 右孩子域
每個節點的度數不超過2的有序樹
遍歷二叉樹
首先訪問根節點 、 先序遍歷左子樹 、 先序遍歷右子樹
先序遍歷、中序遍歷、後續遍歷
圖用圖的思想來設計地圖是最好的選擇
無向圖 習慣吧圖的點成為頂點 頂點間的連線稱為邊
有向圖 是指圖中的邊有方向 相比於無向圖 有向圖是 有方向的邊
帶權圖 圖中的邊有一定的意義 圖中的邊帶數子 邊帶意義
圖的儲存結構
領接矩陣
用來描述圖中相鄰頂點之間的關係 領接矩陣 = 陣列表示法
領接表十字鍊錶
領接多重表
資料結構學習筆記
資料結構概述 定義我們如何把現實中大量而複雜的問題以特定的資料型別和特定的儲存結構 儲存到主儲存器 記憶體 中,以及在此基礎上為實現某個功能 比如查詢摸個 元素,刪除某個元素,對所有元素進行排序 而執行的相應操作,這個相應 的操作也叫演算法 資料結構 個體 個體的關係 演算法 對儲存資料的操作 演算...
資料結構學習筆記
資料結構學習筆記 程式 資料結構 演算法 資料結構 資料 結構 結構的本質是關係 資料之間的關係從不通風層面上分為邏輯關係和物理關係 演算法的設計要依據資料的邏輯關係 演算法的實現要依據資料的物理關係 物理關係是邏輯關係的基礎和載體 演算法實現時需要先依據問題抽象出資料模型,即初步確定待處理資料的邏...
資料結構 學習筆記
一 鍊錶 1 基本特徵 記憶體節點是不連續的,節點之間通過指標彼此關聯。2 基本操作 追加 插入 刪除 遍歷 偽隨機訪問!3 實現要點 1 追加 新建節點存放資料,令新節點的前指標指向當前尾節點,新節點的後指標為null,令當前尾節點的後指標指向新節點,尾指標指向新節點。考慮在空煉表中追加第乙個節點...