如果一個數(shù)據(jù)元素都沒有,該數(shù)據(jù)結(jié)構(gòu)稱為空數(shù)據(jù)結(jié)構(gòu);在空數(shù)據(jù)結(jié)構(gòu)中插入一個新的元素后數(shù)據(jù)結(jié)構(gòu)變?yōu)榉强諗?shù)據(jù)結(jié)構(gòu);將數(shù)據(jù)結(jié)構(gòu)中的所有元素均刪除,則該數(shù)據(jù)結(jié)構(gòu)變成空數(shù)據(jù)結(jié)構(gòu)。 (推薦學(xué)習(xí):phpstorm)
如果一個非空的數(shù)據(jù)結(jié)構(gòu)滿足如下條件,則該數(shù)據(jù)結(jié)構(gòu)為線性結(jié)構(gòu):
有且只有一個根結(jié)點
每一個結(jié)點最多只有一個前件,也最多只有一個后件
線性結(jié)構(gòu)又稱線性表。
注意:在線性結(jié)構(gòu)表中插入或刪除元素,該線性表仍然應(yīng)滿足線性結(jié)構(gòu)。
如果一個數(shù)據(jù)結(jié)構(gòu)不滿足線性結(jié)構(gòu),則稱為非線性結(jié)構(gòu)。
線性結(jié)構(gòu)是一個有序數(shù)據(jù)元素的集合。
常用的線性結(jié)構(gòu)有:線性表,棧,隊列,雙隊列,串。
關(guān)于廣義表、數(shù)組,是一種非線性的數(shù)據(jù)結(jié)構(gòu)。
常見的非線性結(jié)構(gòu)有:二維數(shù)組,多維數(shù)組,廣義表,樹(二叉樹等)
數(shù)據(jù)結(jié)構(gòu)課程中數(shù)據(jù)的邏輯結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu)。
對于數(shù)據(jù)結(jié)構(gòu)課程而言,簡單地說,線性結(jié)構(gòu)是n個數(shù)據(jù)元素的有序(次序)集合。