hdu2717 廣度優先搜尋

2022-04-03 07:22:16 字數 989 閱讀 8753

acer 生涯的第一道bfs,終於ac了。剛開始與深搜弄混了,自己也暈了一上午。()

還有就是queue中幾個函式的用法;

pop()//刪除隊首元素

front()獲得隊首元素

push()//

back(),empty()//

1 #include 

2 #include //

注意與的區別

3using

namespace std;

4const

int max=100001;

5 queue q;

6int used[max];

7int step[max];

8int totle;

9void bfs(int k,int s,int e)

10 30

if(n+1

<=e&&!used[n+1])

31

35if(n*2

<=e&&!used[n*2])

36

4041 }

4243 }

44int main()

45 65

if(n+1<=totle&&!used[n+1])

6667

if(n*2<=totle&&!used[n*2])

6869

int head=q.front();

70q.pop();

71*/

72 q.push(n);

73 bfs(k,0,totle);

74 cout<75

//head=q.front();

76//

cout<

7778 }

79 }

80return

0;81

82 }

搜尋 廣度優先搜尋

廣度優先搜尋一層一層地進行遍歷,每層遍歷都是以上一層遍歷的結果作為起點,遍歷乙個距離能訪問到的所有節點。需要注意的是,遍歷過的節點不能再次被遍歷。class solution,int shortestpathbinarymatrix vectorint grid length return 1 cl...

廣度優先搜尋

include include include include using namespace std struct node 圖頂點結構定義 typedef struct node graph 圖形的結構新型態 struct node head 9 圖形頂點陣列 int visited 9 遍歷標...

廣度優先搜尋

廣度優先搜尋詳解 1.也稱寬度優先搜尋,顧名思義,就是將一棵樹一層一層往下搜。演算法首先搜尋和s距離為k的所有頂點,然後再去搜尋和s距離為k l的其他頂點。bfs是一種完備策略,即只要問題有解,它就一定可以找到解。並且,廣度優先搜尋找到的解,還一定是路徑最短的解。但是它盲目性較大,尤其是當目標節點距...