1. 程式人生 > >資料結構_線性表

資料結構_線性表

線性表
  • 定義:具有相同型別有限多個數據元素組成的一個有序序列
  • 按照元素的數值大小與位置的關係分為:有序線性表 和 無序線性表
  • 線性表上的基本處理:
    • 建立、刪除線性表
    • 新增、刪除元素
    • 得到當前元素個數
    • 根據位置查詢元素
    • 更具元素查詢位置
  • 不同的儲存結構會對線性表上的處理實現產生直接影響

順序表

線性表的順序儲存實現

  • 邏輯上鄰接的兩個元素、物理位置也同樣相鄰接
  • 順序儲存中節點不需要儲存鄰接關係
  • 假設:順序表Sq第一個儲存節點a1(總儲存大小為size)的起始位置記為LOC(a1),可知 :LOC(a2) = LOC(a1) + size
    得出通項 LOC(ai) = LOC(a1) + size * (i - 1)
  • 若知道其實地址LOC(a1),可得出序號i與訪問地址的關係
    [ LOC(a1) - LOC(ai)] / size + 1 = i
    所以對順序表中的任何一個元素的訪問,都可在相同時間內完成
  • 順序表的隨機訪問容易,但是插入or刪除一個元素時,需要移動其他元素
    。。。找到工作我再來更新