1. 程式人生 > >【資料結構】【一】基本概念

【資料結構】【一】基本概念

資料基本概念:

資料:描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合.
資料元素:是組成資料的,有一定意義的基本單位,在計算機中通常作為整體處理.比如人,牛,羊.
資料項:一個數據元素可以由若干個資料項組成,比如人可以有眼,耳,鼻,也可有姓名,年齡,地址.資料項是資料不可分割的最小單位.
資料物件:是性質相同的資料元素的集合,是資料的子集.
資料結構:是相互之間存在一種或者多種特定關係的資料元素的集合.

邏輯結構與物理結構:

邏輯結構:資料物件中資料元素之間的相互關係
1.集合結構:集合結構中的資料元素除了同屬於一個集合,他們之間沒有其他關係.各元素是平等的.
2.線性結構:線性結構中的資料元素之間是一對一的關係.
3.樹形結構:樹形結構中的資料元素之間是一對多的關係.
4.圖形結構:圖形結構中的資料元素之間是多對多的關係.

物理結構,儲存結構:資料的邏輯結構在計算機中的儲存形式
1.順序儲存結構:是把資料元素儲存在連續的的地址中,資料間邏輯關係和物理關係是一樣的(排隊站位),陣列就是順序儲存結構
2.鏈式儲存結構:是把資料元素放在任意的儲存單元中,可以使連續也可以是不連續的,需要用指標來存放元素的地址,一個指標指向一個地址.

 

演算法:

定義:演算法是解決特定問題求解步驟的描述,在計算機中變現為指令的有限序列,並且每條指令表示一個或多個操作
五個特性:
輸入,輸出,有窮性,確定性,可行性
好的演算法特徵:
正確性,可讀性,健壯性,高效率和低儲存量

 

大O階:

常用的時間複雜度耗時從小到大
O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n)
O(n^3),O(2^n),O(n!),O(n^n)  過大的n,會使結果變得不顯示,這種情況一般不去討論
推導大O階:


1.用常數1取代執行時間中的所有加法常數
2.執行次數函式中,只保留最高階項
3.如果最高階項存在且不為1,則去除與這個項相乘的常數