什么是鏈表 鏈表的特點(diǎn)有哪些呢?
鏈表的特點(diǎn)有哪些呢?線性表鏈?zhǔn)酱鎯?chǔ)表示的特點(diǎn)是使用一組任意的存儲(chǔ)單元來(lái)存儲(chǔ)線性表的數(shù)據(jù)元素(這組存儲(chǔ)單元可以是連續(xù)的,也可以是不連續(xù)的)。因此,為了表示每個(gè)數(shù)據(jù)元與其直接后繼數(shù)據(jù)元之間的邏輯關(guān)系,除了
鏈表的特點(diǎn)有哪些呢?
線性表鏈?zhǔn)酱鎯?chǔ)表示的特點(diǎn)是使用一組任意的存儲(chǔ)單元來(lái)存儲(chǔ)線性表的數(shù)據(jù)元素(這組存儲(chǔ)單元可以是連續(xù)的,也可以是不連續(xù)的)。因此,為了表示每個(gè)數(shù)據(jù)元與其直接后繼數(shù)據(jù)元之間的邏輯關(guān)系,除了存儲(chǔ)其自身的信息之外,數(shù)據(jù)元還需要存儲(chǔ)指示其直接后繼數(shù)據(jù)元的信息(即,直接后繼數(shù)據(jù)元的存儲(chǔ)位置)。這兩部分信息形成一個(gè)節(jié)點(diǎn)(如概述旁邊的圖所示)來(lái)表示線性表中的數(shù)據(jù)元素。線性表的鏈?zhǔn)酱鎯?chǔ)表示法的一個(gè)缺點(diǎn)是從一開始就尋找一個(gè)數(shù)字非常麻煩。根據(jù)情況,還可以設(shè)計(jì)鏈表的其他擴(kuò)展。但一般不會(huì)將數(shù)據(jù)附著到邊上,因?yàn)殒湵淼狞c(diǎn)和邊基本上是一一對(duì)應(yīng)的(除了第一個(gè)或最后一個(gè)節(jié)點(diǎn),但沒(méi)有特例)。但是,有一種特殊情況,即如果鏈表支持反轉(zhuǎn)鏈表的某個(gè)部分中的前后指針,則在該側(cè)添加反轉(zhuǎn)標(biāo)記可能更方便。對(duì)于非線性鏈表,可以引用其他相關(guān)的數(shù)據(jù)結(jié)構(gòu),例如樹和圖。此外,還有一種基于多重線性鏈表的數(shù)據(jù)結(jié)構(gòu):跳轉(zhuǎn)列表、插入、刪除和搜索等基本操作的速度可以達(dá)到o(nlogn),與平衡二叉樹的速度相同。存儲(chǔ)數(shù)據(jù)元素信息的域稱為數(shù)據(jù)域(將域名設(shè)置為數(shù)據(jù)),存儲(chǔ)直接后續(xù)存儲(chǔ)位置的域稱為指針域(將域名設(shè)置為下一個(gè))。存儲(chǔ)在指針字段中的信息也稱為指針或鏈。由于這種鏈表的每個(gè)節(jié)點(diǎn)只包含一個(gè)指針字段,所以又稱為單鏈表或線性鏈表。