資料結構按邏輯結構可以分為集合、線性結構、非線性結構;按儲存結構可以劃分為順序、鏈式、索引、雜湊儲存結構。下面主要區分一下順序和鏈式儲存的優缺點,這是軟考的知識點,分析記憶一下:
儲存密度:順序儲存結構是乙個乙個挨著,基本上是乙個空間對應乙個資料;而鏈式儲存由於每個結點都含有指標區域,故儲存空間占用比較大,儲存密度也就相對來說比較少。
查詢運算:由於順序和鏈式儲存都是用的順序方法進行的查詢,依次向下,所有效率相同;如果順序儲存的元素是有序的,那就另當別論,因為可以採用二分查詢法。
讀運算:順序儲存可以採用首位址和偏移量的方法進行隨機訪問,而鏈式卻需要從頭開始乙個乙個的進行。
插入和刪除運算:鏈式儲存只是針對單個結點進行操作即可,不用影響到其他的,故複雜度為1;順序儲存則每次刪除或者插入必須對其後面的結點進行操作,如插入操作,則需要其後面的所有結點向後移一位,留出空間之後再將其插入。
資料結構 佇列 順序儲存結構佇列 鏈式儲存結構佇列
佇列是一種只允許在一端進行插入操作,而在另外一端進行刪除操作的線性表,特徵是先進先出,包括 順序儲存結 構佇列 鏈式儲存結構佇列。重點說明 迴圈佇列和鏈隊。在佇列中front為隊頭指標 rear為隊尾指標 佇列 佇列空的條件 rear front 佇列滿的條件 rear 1 queuesize fr...
資料結構 線性表的順序儲存和鏈式儲存
線性表進行順序儲存時,邏輯上相鄰的元素,其物理位置也相鄰,因此在己知第乙個元素儲存位置和元素序號的情況下,可計算出表中任意指定序號元素的儲存位置,即按照序號訪問元素時隨機的,該運算的時間複雜度為1,也就是常量級。而插入元素時就需要移動一些元素了,在最壞情況下要移動表中的所有元素,因此該運算的時間複雜...
資料結構 Java實現佇列的順序儲存和鏈式儲存
佇列的性質 先進先出。佇列的順序儲存 環形隊 採用乙個陣列和乙個代表陣列的下標的整型變數實現。環形隊 順序隊會造成陣列空間的浪費 如果不想造成空間的浪費 可以使用乙個陣列來實現,不需要頭 尾指標,在進隊時 重新建立乙個陣列儲存原來的元素和進隊的元素,然後將 新陣列賦給舊陣列,該寫法不要對隊的大小做限...