搜尋演算法總結

2021-06-07 15:12:40 字數 750 閱讀 1840

搜尋演算法,是一種在狀態空間中尋找特定的目標狀態及到達目標狀態的途徑的系統方法。常見的題目如:搜尋是計算機求解問題的最基本方法,適用面很廣,沒有向動態規劃那樣對狀態有最優化原理和無後效性的約束。而針對具體問題,特別是運用了某種智慧型化的優化手段,也許會帶來某些具體的約束。

相關題目:

poj 3278

poj 1164

1088 記憶搜尋

poj2386

1101 the game

1753 flip game

2312 battle city

1011 sticks

1233 street crossing

1324 holedox moving

1915 knight moves

1980 unit fraction partition

1462 ok

3414 ok

1077

2488

3525

3635

1163

相關基礎知識:棧(dfs),佇列(bfs),判重

可以提高搜尋效率的技術:記憶搜尋(動態規劃),對候選分枝賦於權重,根據權重進行優先搜尋(a*搜尋)。

深度優先搜尋

dfs儲存狀態的結構為堆疊

廣度優先搜尋

bfs儲存狀態的結果為佇列

種子填充法

推薦使用

bfs實現

記憶化搜尋

理解其思想,為動態規劃的學習做鋪墊

搜尋演算法總結

a 演算法,分支限界演算法。如有錯誤歡迎指正。為了便於描述,搜尋演算法適用解決在一張有權無向圖中,找到從原點到終點的最短路徑。wait arr陣列存放待擴充套件的節點。初始化 把初始節點root 加入到wait arr 陣列中 while wait arr陣列不為空 if 還存在子節點 子節點加入到...

ACM搜尋演算法總結

一 回溯演算法 回溯演算法是所有搜尋演算法中最為基本的一種演算法,其採用了一種 走不通就掉頭 思想作為其控制結構,其相當於採用了先根遍歷的方法來構造解答樹,可用於找解或所有解以及最優解。評價 回溯演算法對空間的消耗較少,當其與分枝定界法一起使用時,對於所求解在解答樹中層較深的問題 有較好的效果。但應...

acm搜尋演算法總結

近期也是學習了搜尋演算法,搜尋被稱為通用解法 雖然啥題都可以解但是也有很大的弊端就是時間!概念 狀態對問題在某一時刻進展情況的數學描述或者是數學抽象。狀態轉移 每乙個狀態都是乙個可能的解,狀態的轉移就是問題從乙個狀態轉移到另乙個狀態,這樣就可以進行搜尋的一步步延伸直到找到需要的解。廣度優先搜尋 一層...