順序存儲和鏈?zhǔn)酱鎯Φ奶攸c 線性表的順序存儲與鏈?zhǔn)酱鎯Φ膬?yōu)缺點各是什么?
線性表的順序存儲與鏈?zhǔn)酱鎯Φ膬?yōu)缺點各是什么?順序存儲結(jié)構(gòu)與鏈?zhǔn)酱鎯Y(jié)構(gòu)的區(qū)別:鏈?zhǔn)搅斜泶鎯Y(jié)構(gòu)的存儲地址不一定是連續(xù)的,但順序存儲結(jié)構(gòu)的存儲地址必須是連續(xù)的;鏈?zhǔn)酱鎯m合頻繁地插入、刪除和更新元素,而
線性表的順序存儲與鏈?zhǔn)酱鎯Φ膬?yōu)缺點各是什么?
順序存儲結(jié)構(gòu)與鏈?zhǔn)酱鎯Y(jié)構(gòu)的區(qū)別:鏈?zhǔn)搅斜泶鎯Y(jié)構(gòu)的存儲地址不一定是連續(xù)的,但順序存儲結(jié)構(gòu)的存儲地址必須是連續(xù)的;鏈?zhǔn)酱鎯m合頻繁地插入、刪除和更新元素,而順序存儲則適合于頻繁查詢。順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)的優(yōu)缺點:順序存儲結(jié)構(gòu)比鏈?zhǔn)酱鎯Y(jié)構(gòu)節(jié)省更多的空間。由于鏈?zhǔn)浇Y(jié)構(gòu),每個節(jié)點都有一個指針存儲字段。存儲操作:序列支持隨機(jī)存取,方便操作插入和刪除。鏈?zhǔn)奖刃蛄惺椒奖悖ㄒ驗椴迦胄蛄斜硪埠芊奖悖?。問題是序列表的插入需要更大的空間復(fù)雜度,包括從頭索引和索引后的元素向后移動,而插入是在鏈表被索引后完成的。例如,在字典中,查詢字母J時插入完成,可以選擇兩種方式:一是按順序查詢,從第一頁到第J頁;二是索引查詢,從字典索引中,直接查找J頁數(shù),直接查找頁數(shù),也許比順序查詢最快。
九、,線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)與順序存儲結(jié)構(gòu)比較有何特點?這兩種結(jié)構(gòu)分別適合在什么情況下使用?
看看名字就知道了。順序存儲結(jié)構(gòu)使用一組具有連續(xù)地址的存儲單元依次存儲線性表中的元素。
因為表中的每個元素具有相同的屬性,所以它占用相同的存儲空間。因此,線性表中的任何元素都可以通過地址計算直接在內(nèi)存中訪問。這種結(jié)構(gòu)的特點是邏輯上相鄰的元素在物理上也是相鄰的。以順序結(jié)構(gòu)存儲的線性表稱為順序表。線性表鏈?zhǔn)酱鎯r,每個數(shù)據(jù)元(節(jié)點)的存儲包括兩部分:數(shù)據(jù)區(qū)和指針區(qū)。數(shù)據(jù)區(qū)存儲節(jié)點本身的數(shù)據(jù),指針區(qū)存儲其后繼元素的地址(如果沒有后繼元素,則設(shè)置為null)。只要知道線性表的起始地址(記錄在頭指針中),就可以通過它們之間的鏈接關(guān)系逐漸找到表中的元素