1、資料結構概述
數結構是計算機中對資料的一種儲存和組織方式,同是也泛指相互之間存在一種或多種特定關係的資料的集合。
2、資料結構中的基本概念
資料(data):資料是資訊的載體,其能夠被計算機識別、儲存和加工處理,是電腦程式加強的「原材料」。
資料元素(data element):資料元素是資料的基本單位,其也稱元素、結點、頂點、記錄等。
資料結構(data structure):資料結構指的是資料之間相互關係,也就是資料的組織形式。
3、資料結構的內容
資料結構的邏輯結構、資料的儲存結構和資料的運算。
4、資料結構的分類
1、線形結構
特點:(1)線性結構是非空集
(2)線性結構有且僅有乙個開始結點和一終端結點
(3)線性結構所有結點最多只有乙個直接前趨結點和乙個直接後繼結點
應用:線性結構、棧、佇列和串等
2、非線性結構
(1)非線性結構是非空集
(2)非線性結構的乙個結點可能有多個直接前趨結點和直接後繼結點。
應用:陣列、廣義表、樹結構和圖結構都是非線性結構
5、資料結構的幾種儲存方式
1、順序儲存方式
順序儲存方式就是在一塊連續的儲存區域乙個接著乙個地存放資料。
2、鏈結儲存方式
乙個結點的引用字段往往指向下乙個結點的存放位置
3、索引儲存方式
索引儲存方法是採用附加的索引表的方式來儲存結點資訊
可分為兩種:
4、雜湊儲存方式
雜湊儲存方式是根據結點的關鍵字直接計算出該結點的儲存位址的一種儲存方式。
5、常用的資料結構
1、陣列(array) 2、棧(stack)、 3、佇列(queue) 4、鍊錶(linked list) 5、樹(tree) 6、圖(graph)
7、堆(heap)
8、雜湊表(hash)
6、資料結構解決問題分為:
數值計算問題和非數值計算問題
資料結構與演算法學習
我想重新學習一下資料結構與演算法,打好基礎。to measure is to know.我們用演算法複雜度t n 來表示演算法的效率,效能。t n 的取值 所有問題規模為n的問題例項中,將他們的計算成本進行總體的比較,取出最壞情況下的值。有幾點需要catch,1.演算法執行的時間,會根據程式語言,作...
資料結構與演算法學習筆記 緒論(2)
演算法 algorithm 是對特定問題求解方法的一種描述,是指令的有限序列,其中每一條指令表示乙個或多個操作。特性 1.6.1演算法效率的度量 演算法執行時間需通過依據該演算法編制的程式在計算機上執行所消耗的時間來度量。方法通常有兩種 1.6.2時間複雜度度量 演算法中基本操作重複執行的次數是問題...
資料結構與演算法學習筆記
演算法基礎篇 第一章 演算法概述 首先了解一下基本的概念 1.1 什麼是演算法呢?從字面意義上理解,演算法就是用於計算的方法,用這種方法達到預期的結果。通俗的講,演算法可以理解為乙個完整的解題步驟,由一些基本的運算和規定的運算順序組成。通過這樣的解題步驟可以解決特定的問題。演算法可以抽象出5個特徵 ...