1.邏輯結(jié)構(gòu):數(shù)據(jù)對象中數(shù)據(jù)元素之間的相互關(guān)系.邏輯結(jié)構(gòu)的分類:
<1>集合結(jié)構(gòu):集合結(jié)構(gòu)中的數(shù)據(jù)元素除了同屬于一個集合外,他們之間沒有其他關(guān)系.
<2>線性結(jié)構(gòu):線性結(jié)構(gòu)中的元素之間的關(guān)心是一對一的聯(lián)系
<3>樹形結(jié)構(gòu):樹形結(jié)構(gòu)中的數(shù)據(jù)元素之間存在著一種一對多的層次關(guān)系
<4>圖形結(jié)構(gòu):圖形結(jié)構(gòu)的數(shù)據(jù)元素是多對多的關(guān)系
2.物理結(jié)構(gòu):是指數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機(jī)中的存儲形式(存儲結(jié)構(gòu))
數(shù)據(jù)的存儲結(jié)構(gòu)應(yīng)正確反應(yīng)數(shù)據(jù)元素之間的邏輯關(guān)系,如何存儲數(shù)據(jù)元素之間的邏輯關(guān)系,是實(shí)現(xiàn)物理結(jié)構(gòu)的重點(diǎn)和難點(diǎn)
<1>順序存儲結(jié)構(gòu):是把數(shù)據(jù)元素存放在地址連續(xù)的存儲單元里,其數(shù)據(jù)間的邏輯關(guān)系和物理關(guān)系是一致的.說白了就是排隊站位,數(shù)組就是這樣的順序存儲結(jié)構(gòu).
<2>鏈?zhǔn)酱鎯Y(jié)構(gòu):是把數(shù)據(jù)元素存放在任意的存儲單元里,這組存儲單元可以是連續(xù)的,也可以是不連續(xù)的.數(shù)據(jù)元素的存儲關(guān)系并不能反映其邏輯關(guān)系,因此需要用一個指針存放數(shù)據(jù)元素的地址,這樣通過地址就可以找到相關(guān)聯(lián)數(shù)據(jù)的位置.
鏈?zhǔn)酱鎯`活,數(shù)據(jù)存放在哪里不重要,只要有一個指針存放了相應(yīng)的地址就能找到它了.
邏輯結(jié)構(gòu)是面向問題的,而物理就是面向計算機(jī)的,其基本的目標(biāo)就是講數(shù)據(jù)及邏輯關(guān)系存放到計算機(jī)的內(nèi)存中.