深搜dfs

地山發表於2024-09-11

剪枝:

  1. 最佳化搜尋順序:最佳化搜的方向或迴圈列舉的方向
  2. 排除等效:多個搜尋方向能走到一個狀態。
  3. 可行性剪枝。
  4. 最優性剪枝。
  5. 記憶化
  6. 上下界剪枝:縮小搜尋中的迴圈的列舉範圍。
    剪枝好題:生日蛋糕http://noip.ybtoj.com.cn/contest/869/problem/4

折半搜尋
將一整個搜尋整體砍成兩段,每一段分別搜,再對兩個答案序列排序,對一個進行二分,對每個mid匹配另一陣列中的每個。(詳見:https://www.cnblogs.com/zaza-zt/p/13360679.html
IDA*
非常抽象的演算法,ID表示設定一個最大深度,到此深度後就不搜了,A*是預估函式,預估價值劣於當前答案剪掉。
大典題:騎士精神https://www.luogu.com.cn/problem/P2324

相關文章