數據(Data)
數據 是信息的載體它能夠被計算機識別存儲和加工處理是計算機程序加工的原料
隨著計算機應用領域的擴大數據的范疇包括整數實數字符串圖像和聲音等
數據元素(Data Element)
數據元素 是數據的基本單位數據元素也稱元素結點頂點記錄一個數據元素可以由若干個 數據項 (也可稱為字段域屬性)組
成數據項是具有獨立含義的最小標識單位
數據結構(Data Structure)
數據結構 指的是數據之間的相互關系即數據的組織形式
數據結構一般包括以下三方面內容
① 數據元素之間的邏輯關系也稱 數據的邏輯結構 (Logical Structure);
數據的邏輯結構是從邏輯關系上描述數據與數據的存儲無關是獨立於計算機的數據的邏輯結構可以看作是從具體問題抽象出來的數學
模型
② 數據元素及其關系在計算機存儲器內的表示稱為 數據的存儲結構 (Storage Structure);
數據的存儲結構是邏輯結構用計算機語言的實現(亦稱為映象)它依賴於計算機語言對機器語言而言存儲結構是具體的一般只在
高級語言的層次上討論存儲結構
③ 數據的運算 即對數據施加的操作
數據的運算定義在數據的邏輯結構上每種邏輯結構都有一個運算的集合最常用的檢索插入刪除更新排序等運算實際上只是在
抽象的數據上所施加的一系列抽象的操作所謂 抽象的操作 是指我們只知道這些操作是做什麼而無須考慮如何做只有確定了
存儲結構之後才考慮如何具體實現這些運算
為了增加對數據結構的感性認識下面舉例來說明有關數據結構的概念
【例】 學生成績表見下表
注意在表中指出數據元素數據項開始結點和終端結點等概念
()邏輯結構
表中的每一行是一個數據元素(或記錄結點)它由學號姓名各科成績及平均成績等數據項組成
表中數據元素之間的邏輯關系是對表中任一個結點與它相鄰且在它前面的結點(亦稱為直接前趨(Immediate Predecessor))最多只
有一個;與表中任一結點相鄰且在其後的結點(亦稱為直接後繼(Immediate Successor))也最多只有一個表中只有第一個結點沒有直
接前趨故稱為開始結點;也只有最後一個結點沒有直接後繼故稱之為終端結點例如表中馬二所在結點的直接前趨結點和直接後繼
結點分別是丁一和張三所在的結點上述結點間的關系構成了這張學生成績表的邏輯結構
()存儲結構
該表的存儲結構是指用計算機語言如何表示結點之間的這種關系即表中的結點是順序鄰接地存儲在一片連續的單元之中還是用指針將
這些結點鏈接在一起?
()數據的運算
在上面的學生成績表中可能要經常查看某一學生的成績;當學生退學時要刪除相應的結點;進來新學生時要增加結點究竟如何進行查
找刪除插入這就是數據的運算問題
搞清楚了上述三個問題也就弄清了學生成績表這個數據結構
數據的邏輯結構分類
在不產生混淆的前提下常將數據的邏輯結構簡稱為數據結構數據的邏輯結構有兩大類
( )線性結構
線性結構的邏輯特征 是若結構是非空集則有且僅有一個開始結點和一個終端 結點並且所有結點都最多只有一個直接前趨和一個直接後
繼 線性表是一個典型的線性結構棧隊列串等都是線性結構
( )非線性結構
非線性結構的邏輯特征 是一個結點可能有多個直接前趨和直接後繼數組廣義表樹和圖等數據結構都是非線性結構
From:http://tw.wingwit.com/Article/program/sjjg/201311/23608.html