大話資料結構筆記之--緒論及演算法
阿新 • • 發佈:2018-11-24
一.資料結構緒論
資料結構含義:是相互之間存在一種或多種特定關係的資料元素的集合
1,資料結構起源
1)資料結構是一門研究非數值計算的程式設計問題中的操作物件,以及他們之間的關係和操作等相關問題的學科。
2)程式設計的實質是對確定的問題選擇一種好的結構,加上好的演算法。
2、基本概念和術語
1)資料:是描述客觀事物的符號,是計算機中可以操作的物件,是能被計算機識別,並輸入給計算機處理的符號集合。
2)符號具備兩個前提 :a)可以輸入到計算機中
b)能被計算機程式處理
3)資料元素 :是組成資料的,有一定意義的基本單位,在計算機中通常作為整體處理,也被稱為記錄。
4)資料項:一個資料元素可以由若干資料項組成。是資料不可分割的最小單位。
5)資料物件:是性質相同的資料元素的集合。
6)資料結構
結構簡單理解就是關係,嚴格說是各個組成部分相互搭配和排列的方式
在計算機中資料元素不是孤立的,是有內在聯絡的集合
3.邏輯結構和物理結構
邏輯結構:指資料物件中資料元素之間的相互關係
1)集合結構:資料元素之間是平等關係
2)線性結構:資料元素之間是一對一的關係
3)樹形結構:資料元素之間是一對多的層次關係
4)圖形結構:資料元素之間是多對多的關係
注意:
4.物理結構:指資料的邏輯結構在計算機中的儲存形式,有些書也叫儲存結構
1)順序儲存結構
2)鏈式儲存結構
5.資料型別
C語言中資料型別分為兩類,原子型別,是不可分解的型別
結構型別由若干個型別組合而成,可再分解,如陣列
6.抽象資料型別
抽象資料型別是指: 一個數學模型及定義在該模型上的一組操作
資料抽象型別體現了程式設計中問題分解,抽象和資訊隱藏的特性
總結回顧
二.演算法
1.演算法的定義
2.演算法的五個基本特性:
1)輸入
2)輸出
3)有窮性
4)確定性
5)可行性
3.演算法設計的要求
正確性
可讀性
健壯性
時間效率高和儲存兩低
4.演算法效率的度量方法
事後統計方法
事前分析估算方法
5.函式的逐漸增長