搜尋總結 DFS BFS DBFS框架

2021-08-02 01:40:14 字數 1094 閱讀 4650

注:此博文是在老師上課之後總結的,屬於課堂筆記,大部分摘自老師課件。

盲目搜尋:按預定的控制策略進行搜尋,在搜尋過程中獲得的中間資訊不用來改進控制策略。

1. 廣度優先搜尋(breadth first search)

2. 深度優先搜尋(depth first search)

3. 純隨機搜尋、重覆式搜尋、迭代加深搜尋、

迭代加寬搜尋、柱型搜尋

啟發式搜尋:在搜尋中加入了與問題有關的啟發性資訊,用以指導搜尋朝著最有希望的方向發展,加速問題的求解過程並找到最優解。

1. a*演算法

2. ida*演算法

深搜即深度優先搜尋,總結一句話是不撞南山不回頭。就是搜尋按一定限制條件,往深處搜尋,直到不能此路不能搜尋再換路,直到所有部分全搜尋完。

回溯法又叫試探法,我覺得他和深搜類似,不過,回溯一般是用棧的形式,記錄每次每一步,不滿足前進的步就退回(即出棧),這種走不通就退回再走的技術為回溯法。

廣搜即廣度優先搜尋,就是按層次搜尋,一層層來,但是順序是有要求的,就是上一層按什麼順序搜尋,下一層也要按這個順序層次搜尋。

話不多說,看下圖搜尋的箭頭方向,方便記憶。

void dfs(int k)  //處理第k步

}}

//定義乙個棧;

//起始點加入棧;

while(棧不空)

//若迴圈中找到目標,輸出結果;

//否則輸出無解;

void bfs()

}

//雙向廣搜**框架

struct state {}; //狀態

queue

que[2];

bool flag;

void bfs(int d)

}int dbfs()

return cnt;

}

最終筆記於2017-6-4;

二次筆記於2017-07-17;

三次筆記於2017-07-27。

搜尋框製作

1.input是乙個自閉合標籤,不能製作複雜的 混排樣式,可以採用button。也可以使用背景圖 2.input標籤的type submit 時,可以提交表單內容到伺服器 此時按鈕必須放置在要提交的表單元素內,也就是 3.動態提示的製作 jquery或者js指令碼完成動態效果 事件繫結和事件 aja...

搜尋框製作

利用在查詢語句中加入模糊查詢的條件以達到關鍵字模糊搜尋的目的 like 萬用字元 需要將sql查詢語句改為 sql select from table name where username like keyword order by id limit keyword get keyword if ...

搜尋框即時搜尋的實現

博主最近做的專案需要實現乙個搜尋的功能 而且還需要即時搜尋 輸入關鍵字就有結果 包含關鍵字 自動顯示 這裡說一下思路 監聽edittext裡面輸入的內容 使用系統提供的filter對listview進行過濾即可 下面貼出關鍵 開啟過濾 lv search.settextfilterenabled t...