在計算機中,數據的存儲結構可以采用如下四種方法來實現。
1、順序存儲方式:順序存儲方式就是在一塊連續的存儲區域一個接着一個的存放數據。順序存儲方式把邏輯上相鄰的節點存儲在物理位置放在相鄰的存儲單元里,節點間的邏輯關系由存儲單元的鄰接關系來體現。順序存儲方式也稱為順序存儲結構,一般采用數組或結構數組來描述。
2、鏈接存儲方式:鏈接存儲方式比較靈活,不要求邏輯上相鄰的節點在物理位置上相鄰,節點間的邏輯關系由附加的引用字段來表示。一個節點的引用字段往往指向下一個節點的存放位置。鏈接存儲方式也成為鏈式存儲結構。
3、索引存儲方式:索引存儲方式是采用附加的索引表的方式來存儲節點信息的一種存儲方式。索引表由若干索引項組成。索引存儲方式中索引項的一般形式為(關鍵字、地址)。其中,關鍵字是能夠唯一標識一個節點的數據項。索引存儲方式還可以細分為如下兩類。
稠密索引:這種方式中每個節點在索引表中都有一個索引項,其中索引項的地址知識節點所在的存儲位置。
稀疏索引:這種方式中一組節點在索引表中只對應一個索引項。其中,索引項的地址指示一組節點的起始存儲位置。
4、散列存儲方式:散列存儲方式是根據節點的關鍵字直接計算出該節點的存儲地址的一種存儲方式。
1、順序存儲
優點:
在結點等長時可以隨機存取
存儲密度高節省存儲空間
用結點的物理次序反映結點之間的邏輯關系
缺點:
插入和刪除結點時要移動大量的結點
必須靜態分配連續空間
2、鏈接存儲
優點:
插入和刪除比較靈活,不需要大量移動結點
動態分配空間比較靈活,不需要預先申請最大的連續空間
缺點:
增加指針的空間開銷
檢索必須沿鏈進行,不能隨機存取