bfs一種寫法用queue佇列實現

2021-10-18 13:26:22 字數 1468 閱讀 4990

輸入樣例

69.

...#....

..# ..

....

....

....

....

....

....

....

#@..

.# .#.

.#.0

0

該題用bfs實現我第一次用遞迴實現的bfs實現

**如下

#include

#include

using

namespace std;

const

int n=22;

long

long sum;

char mp[n]

[n];

int book[n]

[n];

int net[4]

[2]=

,,,}

;int sx,sy;

int w,h;

voidfd(

)return;}

void

bfs1

(int a,

int b)

return;}

intmain

(void

)}

#include

#include

#include

using

namespace std;

//#define x1 first;

//#define y1 second;

typedef pair<

int,

int> pll;

const

int n=25;

int n,m,sx,sy;

char g[n]

[n];

intbfs

(int ex,

int ey)

,dy[4]

=;for(

int k=

0;k<

4;k++)}

return sum;

}int

main

(void

) cout<<

bfs(sx,sy)

<

}}

還應多看看queue,pair相關知識。

然後我發現乙個很好玩的現象

前兩個是queue方式實現,第三個是遞迴實現。

老師說他不喜歡萬能頭的原因是因為執行時間會很長,可能用queue檔案增加了執行時間。

weakself的一種寫法

前言在不久前看afnetworking的原始碼時候發現了這麼一句 不知道這行 的使用場景的同學你該去自習看看arc的注意事項和block的使用了 afnetworking的寫法 weak typeof self weakself self 我之前一直這麼寫的 weak typeof self wea...

Makefile的一種通用寫法

管理linux環境下的c c 大型專案,如果有乙個智慧型的build system會起到事半功倍的效果,本文描述linux環境下大型工程專案子目錄makefile的一種通用寫法,使用該方法,當該子目錄內的檔案有增刪時無需對makefile進行改動,可以說相當的智慧型。下面先貼 為減小篇幅,一些非關鍵...

一種快取注入的寫法

1 我們需要乙個快取介面 public inte ce cacheservice 2 實現這個介面 public class cacheservuceimpl implements cacheservice override public void set string key,object val...