1. 程式人生 > 其它 >【軟考-中級】03、資料結構與演算法

【軟考-中級】03、資料結構與演算法

資料結構與演算法

  • 概念
    • 研究資料的組織、儲存和運算
    •  
  • 線性表
    • 先序遍歷、中序遍歷和後序遍歷中,葉子節點的順序完全相同。
  • 佇列
    • 字串可以是本身的子串
  • 陣列和矩陣
    • 按行按列儲存找下標,記住是從0開始的,要查對個數
    • 三對角矩陣求新下標:將選項代入給出的條件(3n-2)
    • 有向圖的鄰接矩陣不一定對稱
    • 鄰接矩陣DFS的時間複雜度是O(n)
    • 鄰接表的時間複雜度是O(n+e)
    •  
  • 查詢
    • 雜湊查詢
      • 複雜度:建表O(n),查表O(1)
      • 雜湊儲存是根據關鍵碼值決定儲存位置
      • 衝突碰撞指的是不同關鍵碼值對應到了相同的儲存地址。
      • 負載(裝填)因子越大,發生衝突的可能性越高
    • B樹和B+樹
      • B樹是多路平衡查詢樹,是一棵排序樹,通過約束所有葉子節點在同一深度,來保證樹的平衡
  • 排序
    • 歸併排序
      • 27個元素進行三趟多路歸併,選取的歸併路數為3路
      • 從小到大
    • 堆排序
      • 先初始化,再調整(自右向左)
      • 第一次排序就是初始化構造好一個堆