2 資料結構相關的概念
2.1 資料結構
資料結構在特性相同的資料元素集合中,資料元素之間存在一種或多種特定的關係,則稱該資料元素的集合為「資料結構」。結構:資料元素之間存在的關係。
線性結構:一對一
樹形結構:一對多
網狀或圖形結構:多對對
線性結構條件:
(1) 有且僅有乙個根結點
(2) 每個結點最對乙個前件,也最多乙個後件
(3) 首結點無前件,尾結點無後件。
2.2 儲存結構
(1)順序儲存結構:利用資料元素存在儲存器中相對位置之間的某種特定關係來表達資料元素間的邏輯關係。優點:隨機訪問表中元素、儲存密度大。缺點:插入和刪除操作需要移動元素。(一組位址連續的記憶體)
(2)鏈式儲存結構:用附加指標表示資料元素之間的邏輯關係。(可以連續可以不連續)
(3)索引儲存結構
(4)雜湊儲存結構
2.3 演算法
解決方****而完整的描述。演算法是一條執行的路徑。
2.4 時間複雜度
執行演算法所需要的計算工作量,工作量用演算法的所執行的基本運算次數來度量。o(n2)
2.5 空間複雜度
執行這個演算法所需要的記憶體空間。輸入資料所佔空間,程式本身所佔空間,輔助變數所佔空間。
資料結構與演算法 資料結構C 堆
資料結構c 堆 如果有乙個關鍵碼的集合k 把它的所有元素按完全二叉樹的順序儲存方式儲存在乙個一維陣列中,並滿足 ki k2 i 1 且 ki k2 i 2 ki k2 i 1 且 ki k2 i 2 i 0,1,2 則稱為小堆 或大堆 小堆 大堆 中 任一結點的關鍵碼均小於 大於 等於它的左右孩子的...
資料結構與演算法 資料結構之棧
棧的英文名是stack 棧的應用場景 表示式的轉換 中綴表示式轉字尾表示式 與求值 實際解決 二叉樹的遍歷。圖形的深度優先 depth一first 搜尋法。package org.yc public class test class arraystack boolean isfull return ...
資料演算法 資料結構與演算法
資料結構和演算法的意義?資料結構是資料的組織方式,演算法是對資料的處理方式,合理的資料結構和演算法,能夠保證程式高效的執行。演算法的五大特性 輸入 演算法具有0個或多個輸入 輸出 演算法具有1個或多個輸出 確定性 演算法每一步有確定的含義,不能有二義性 可行性 演算法有限次完成 演算法的評價方式?演...