數據結構基礎(一)

1.數據:對客觀事物的符號表示。所以能輸入到計算機中並被計算機程序處理的符號的總稱。
2.數據元素:數據的基本單位,在計算機程序中通常作爲一個整體進行考慮和處理。
3.數據對象:性質相同的數據元素的集合,是數據的一個子集。
4.數據結構:是相互之間存在的一種多種特定關係的數據元素的集合。分:
a.集合
b.線性結構
c.樹形結構
d.圖狀結構或網狀結構
5.複數:Complex=(C,R)
6.數據元素分爲順序映像和非順序映像,表示爲順序存儲結構和鏈式存儲結構。
7.高級程序語言的數據類型分爲:
a.原子類型
b.結構類型
8.抽象數據類型:由一個值域和定義在該值域上的一組操作組成。
原子類型:值不可分解。
固定聚合類型:由確定數目的成分按某種結構組成。
9.多形數據類型:其值的成分不確定的數據類型。
10.算法:是對特定問題求解步驟的一種描述。它是指令的有限序列,其中每一條指令表示一個或多個操作。特性:
a.有窮性:一個算法必須總是(對任何合法的輸入值)在執行有窮步之後結束,且每一步都可在有窮時間內完成。
b.確定性:算法只有惟一的一條執行路徑,即對於相同的輸入只能得出相同的輸出。
c.可行性:一個算法是能行的,即算法中描述的操作都是可以通過已經實現的基本運算執行有限次來實現的。
d.輸入:一個算法有零個或多個的輸入,這些輸入取自於某個特定的對象的集合。
e.輸出:一個算法有一個或多個的輸出,這些輸出是同輸入有着某些特定關係的量。
11.算法設計的要求:
a.正確性:應當滿足具體問題的需求依次爲:不含語法錯誤--》幾組輸入能有正確結果--》特殊數據能顯示正確結果--》所有數據能顯示正確結果
通常以第三步爲正確。
b.可讀性:主要爲了人的閱讀與交流,其次纔是機器執行。

c.健壯性:當輸入數據非法時,算法也能適當地做出反應或進行處理,而不會產生奇怪的輸出結果。

d.效率與低存儲量的需要:執行時間短的算法效率高。
12.算法效率的度量:
a.事後統計的方法
b.事前分析估算的方法 -》取決於程序的策略、規模、執行效率、產生出的機器代碼的質量
13.時間複雜度:算法中基本操作重複執行的次數是問題規模n的某個函數f(n),算法的時間量度記作: T(n)=O(f(n))
14.空間複雜度:作爲算法所需存儲空間的量度,記作S(n)=O(f(n))


發佈了34 篇原創文章 · 獲贊 1 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章