修改數(shù)據(jù)庫(kù)表結(jié)構(gòu) 九、,線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)比較有何特點(diǎn)?這兩種結(jié)構(gòu)分別適合在什么情況下使用?
九、,線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)比較有何特點(diǎn)?這兩種結(jié)構(gòu)分別適合在什么情況下使用?看名字就差不多了吧 順序存儲(chǔ)結(jié)構(gòu)就是用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)該線性表中的各個(gè)元素。由于表中各個(gè)元素具有
九、,線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)與順序存儲(chǔ)結(jié)構(gòu)比較有何特點(diǎn)?這兩種結(jié)構(gòu)分別適合在什么情況下使用?
看名字就差不多了吧 順序存儲(chǔ)結(jié)構(gòu)就是用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)該線性表中的各個(gè)元素。
由于表中各個(gè)元素具有相同的屬性,所以占用的存儲(chǔ)空間相同。因此,在內(nèi)存中可以通過(guò)地址計(jì)算直接存取線性表中的任一元素。這種結(jié)構(gòu)的特點(diǎn)是邏輯上相鄰的元素物理上也相鄰。用順序結(jié)構(gòu)存儲(chǔ)的線性表稱作順序表。線性表按鏈?zhǔn)酱鎯?chǔ)時(shí),每個(gè)數(shù)據(jù)元素 (結(jié)點(diǎn))的存儲(chǔ)包括數(shù)據(jù)區(qū)和指針區(qū)兩個(gè)部分。數(shù)據(jù)區(qū)存放結(jié)點(diǎn)本身的數(shù)據(jù),指針區(qū)存放其后繼元素的地址 (沒(méi)有后繼元素時(shí)設(shè)置為空字符(Null).。只要知道該線性表的起始地址 (記錄在頭指針中),表中的各個(gè)元素就可通過(guò)其間的鏈接關(guān)系逐步找到順序查找法適合于存儲(chǔ)結(jié)構(gòu)為()的線性表A散列存儲(chǔ)B順序存儲(chǔ)或鏈?zhǔn)酱鎯?chǔ)?
鏈?zhǔn)酱鎯?chǔ)的線性表的存取機(jī)制是順序的,要想查找位置為i的元素必須采用順序查找法; 順序存儲(chǔ)的線性表的存取機(jī)制是隨機(jī)的,要想查找位置為i的元素直接用下標(biāo)法就可以了。 如果要查找元素e在線性表中的位置那么對(duì)這兩種存儲(chǔ)結(jié)構(gòu)而言,必須采用順序查找法了。
線性表順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的定義,以及各自的有缺點(diǎn),分別適合于哪些應(yīng)用?
定義
順序存儲(chǔ)結(jié)構(gòu)就是用一組地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)該線性表中的各個(gè)元素。由于表中各個(gè)元素具有相同的屬性,所以占用的存儲(chǔ)空間相同。
線性表按鏈?zhǔn)酱鎯?chǔ)時(shí),每個(gè)數(shù)據(jù)元素 (結(jié)點(diǎn))的存儲(chǔ)包括數(shù)據(jù)區(qū)和指針區(qū)兩個(gè)部分。數(shù)據(jù)區(qū)存放結(jié)點(diǎn)本身的數(shù)據(jù),指針區(qū)存放其后繼元素的地址只要知道該線性表的起始地址表中的各個(gè)元素就可通過(guò)其間的鏈接關(guān)系逐步找到
優(yōu)缺點(diǎn)
順序存儲(chǔ)需要開(kāi)辟一個(gè)定長(zhǎng)的空間,讀寫速度快,缺點(diǎn)不可擴(kuò)充容量(如果要擴(kuò)充需要開(kāi)辟一個(gè)新的足夠大的空間把原來(lái)的數(shù)據(jù)重寫進(jìn)去)
鏈?zhǔn)酱鎯?chǔ)無(wú)需擔(dān)心容量問(wèn)題,讀寫速度相對(duì)慢些,由于要存儲(chǔ)下一個(gè)數(shù)據(jù)的地址所以需要的存儲(chǔ)空間比順序存儲(chǔ)大。