国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

數據結構1----邏輯結構與物理結構(霜之小刀)

2019-11-14 09:07:38
字體:
來源:轉載
供稿:網友

歡迎轉載和引用,若有問題請聯系 Email : lihn1011@163.com QQ:2279557541


序言

  不知不覺,程序員這一行已經做了10年了,博客換了很多個程序寫了無數多,眼看就已經到了而立之年,再次拿起了數據結構的書,打算靜下心來再看一遍,為了加深印象,順手寫下些博客算是留念吧。另外該系列中參考了大量陳杰老師的《大話數據結構》中的內容,在此表示衷心的感謝。

何為數據結構

話說,其實我真的不知道如何去定義什么是數據結構。

首先我先說下我的理解

其實我理解的數據結構,就是將數據按照某種關系加以聯系,讓其能夠高效率或者簡單的實現某種操作。

然后在引用下百度知道對數據結構的描述

數據結構是指相互之間存在著一種或多種關系的數據元素的集合和該集合中數據元素之間的關系組成。記為: Data_Structure=(D,R) 其中D是數據元素的集合,R是該集合中所有元素之間的關系的有限集合。

那么數據和數據之間的聯系究竟是什么呢?

數據之間的聯系

數據和數據之間的聯系,其實分為兩種,一種是邏輯上的結構,一種是物理上的結構。

邏輯結構

集合結構

指的是數據之間的聯系除了屬于同一個集合外,沒有其他任何的聯系,如圖所示 這個描述 圖中可以看出來,各個元素之間除了都在大圓圈內,就沒有別的任何聯系了。

線性結構

真不知道該如何定義這個結構。。。先上圖吧 這里寫圖片描述   看著這個圖應該很簡單,貌似就是一堆數據有序的進行排隊的感覺,有第一個,也有最后一個。其實在我心里這個就是定義了,然后我再把《大話數據結構》中定義的原文發出來:   “線性結構:線性結構中的數據元素之間是一對一的關系。”

樹形結構

這里寫圖片描述 之所以叫樹形結構,就是因為這個圖看起來就像一顆倒著的樹。而屬性及結構的特點通過圖也可以看出來,其有根節點,就是最上面那個節點。而各個元素之間的關系,就像是樹干與樹干上的樹枝的關系。是一種一對多的關系。

圖形結構

這里寫圖片描述 圖形關系就是一個更復雜的關系了,貌似各個數據元素之間都有可能是有聯系的,是一種多對多的關系。

總結

簡單的總結下各個邏輯結構的區別就是 集合  —–元素間無關系 線性結構—–元素間的關系為一對一的關系 樹形結構—–元素間的關系為一對多的關系 圖形結構—–元素間的關系為多對多的關系

物理結構

物理結構有兩種分類方式

第一種分類將物理結構分為(《大話數據結構》書中的分類方式)  1、順序存儲結構  2、鏈式存儲結構第二種分類將物理結構分為  1、順序存儲結構  2、鏈式存儲結構  3、索引存儲結構  4、散列存儲結構

由于我認為其實索引存儲結構和散列存儲結構都屬于特殊的鏈式存儲結構,所以我這里采用第一種分類方式。 其中  順序存儲結構,其實就是說存儲的數據在計算機內存中是連續且有順序的排列的,這點涉及到一些內存管理的內容,如果你了解C/C++的話,應該對數據在內存結構中的排列方式會有比較深的理解。其他語言的話,只要簡單理解下應該就沒有問題了。  鏈式存儲結構,就是說存儲的數據在內存上不是連續的,每個數據通過一個“鏈”將各個數據聯系起來,所謂的“鏈”在C/C++中比較常見的就是使用指針。

參考資料

《大話數據結構》 陳杰


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长宁县| 南昌市| 临城县| 青阳县| 嘉鱼县| 民乐县| 东宁县| 都江堰市| 怀安县| 中西区| 大丰市| 米易县| 永福县| 泌阳县| 凤阳县| 宁波市| 泊头市| 绥德县| 商城县| 淳安县| 西充县| 唐海县| 揭阳市| 阳原县| 古交市| 成武县| 甘洛县| 嘉义县| 乐亭县| 察哈| 旬阳县| 遵化市| 金沙县| 喀喇沁旗| 滁州市| 天水市| 金山区| 卫辉市| 开化县| 长丰县| 阿鲁科尔沁旗|