什么是數(shù)據(jù)結(jié)構(gòu)?
定義:
(1)數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)對(duì)象,以及存在于該對(duì)象的實(shí)例和組成實(shí)例的數(shù)據(jù)元素之間的各種聯(lián)系.這些聯(lián)系可以通過(guò)定義相關(guān)的函數(shù)來(lái)給出.
(2)是ADT的物理實(shí)現(xiàn)
(3)是計(jì)算機(jī)中儲(chǔ)存,組織數(shù)據(jù)的方式.
基本概念和術(shù)語(yǔ)
數(shù)據(jù):是客觀事物的符號(hào)表示,是所有能輸入到計(jì)算機(jī)中并被計(jì)算機(jī)程序處理的符號(hào)的總稱.
數(shù)據(jù)元素:是數(shù)據(jù)的基本單位,在計(jì)算集中通常作為一個(gè)整體進(jìn)行考慮和處理.
數(shù)據(jù)項(xiàng):是組成元素的,有獨(dú)立含義的,不可分割的最小單位.
數(shù)據(jù)對(duì)象:是性質(zhì)相同的數(shù)據(jù)元素的集合,是數(shù)據(jù)的一個(gè)子集.
數(shù)據(jù)結(jié)構(gòu)是相互之間存在的一種或多種特定關(guān)系的數(shù)據(jù)元素的集合.
1,邏輯結(jié)構(gòu): 數(shù)據(jù)的邏輯結(jié)構(gòu)是從邏輯關(guān)系上描述數(shù)據(jù),它與數(shù)據(jù)的存儲(chǔ)無(wú)關(guān),是獨(dú)立于計(jì)算機(jī)的.
數(shù)據(jù)的邏輯結(jié)構(gòu)有兩個(gè)要素:一是數(shù)據(jù)元素,二是關(guān)系.
2,存儲(chǔ)結(jié)構(gòu):數(shù)據(jù)對(duì)象在計(jì)算機(jī)中的存儲(chǔ)表示成為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),也稱為物理結(jié)構(gòu).把數(shù)據(jù)對(duì)象存儲(chǔ)到計(jì)算機(jī)時(shí),通常既要存儲(chǔ)各個(gè)數(shù)據(jù)元素的數(shù)據(jù),又要存儲(chǔ)各個(gè)數(shù)據(jù)元素之間的邏輯關(guān)系.數(shù)據(jù)元素在計(jì)算機(jī)中以一個(gè)結(jié)點(diǎn)表示.數(shù)據(jù)元素在計(jì)算機(jī)中有兩種基本的存儲(chǔ)結(jié)構(gòu),分別是順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu).
(1)順序存儲(chǔ)結(jié)構(gòu)是借助元素在存儲(chǔ)器中的相對(duì)位置來(lái)表示數(shù)據(jù)元素之間的邏輯關(guān)系.要求元素存放在連續(xù)的一整塊存儲(chǔ)空間.
(2)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不需要連續(xù)的存儲(chǔ)空間,但是需要給每個(gè)結(jié)點(diǎn)附加指針字段,用于存放后繼元素的存儲(chǔ)地址.
數(shù)據(jù)類型和抽象數(shù)據(jù)類型
數(shù)據(jù)類型是高級(jí)程序設(shè)計(jì)語(yǔ)言中的一個(gè)基本概念.
抽象數(shù)據(jù)類型一般指由用戶定義的,表示應(yīng)用問(wèn)題的數(shù)學(xué)模型,以及定義在這個(gè)模型上的一組操作的總稱.具體包括:數(shù)據(jù)對(duì)象,數(shù)據(jù)對(duì)象上關(guān)系的集合,以及對(duì)數(shù)據(jù)對(duì)象的基本操作的集合.