數(shù)據(jù)結(jié)構(gòu)(Java描述)之線性表
基礎概念
數(shù)據(jù)結(jié)構(gòu):是相互之間存在一種或多種關系的數(shù)據(jù)元素的集合。
邏輯結(jié)構(gòu)和物理結(jié)構(gòu)
關于數(shù)據(jù)結(jié)構(gòu),我們可以從邏輯結(jié)構(gòu)和物理結(jié)構(gòu)這兩個維度去描述
邏輯結(jié)構(gòu)是數(shù)據(jù)對象中數(shù)據(jù)元素之間的關系,是從邏輯意義上去描述的數(shù)據(jù)之間的組織形式。
邏輯結(jié)構(gòu)有4種:
- 集合結(jié)構(gòu)(數(shù)據(jù)元素之間僅以集合的方式體現(xiàn),元素之間沒有別的關系)
- 線性結(jié)構(gòu)(數(shù)據(jù)元素之間存在一對一的關系)
- 樹(數(shù)據(jù)元素之間為一對多或多對一的關系)
- 圖(數(shù)據(jù)元素之間為多對多的關系)
物理結(jié)構(gòu)則是邏輯結(jié)構(gòu)在計算機中內(nèi)存中的存儲形式,分為兩種:
- 順序存儲結(jié)構(gòu)
- 鏈式存儲結(jié)構(gòu)
線性表(list)
線性表是零個或多個數(shù)據(jù)元素的的有限序列
線性表是線性結(jié)構(gòu),元素之間存在一對一的關系,線性表可通過順序和鏈式兩種方式來實現(xiàn)。
順序存儲結(jié)構(gòu),是用一段地址連續(xù)的存儲單元依次存儲線性表的數(shù)據(jù)元素
網(wǎng)友評論