广搜

首先,本人在此申明,绝对没有黈力,否则我就.....真香qwq

广搜,全名广度优先搜索,类似于二叉树的层序遍历就是以一个点为中心,遍历它周围的节点。

以一个简单的图示来说吧

这是有优先级的。。。

不管你们懂不懂,反正我懂了

//有关广搜的模板
struct
node { // 你要表示的状态,例如:坐标 } node _node(/*参数*/) { node r; //初始化 return r; } /* 例如: struct node { int x,y; } node _node(int x,int y) { node r; r.x=x; r.y=y; return r; } */ queue<node>q; bool vis[...]...[...];//判重数组,保证每个状态只访问一次。 void bfs(node s/*起始元素*/) { q.push(s); vis[...]...[...]=1;//初始状态纪录 while(!q.empty()) { node head=q.front(); q.pop(); for(...) {//遍历所有能到达的状态 node new=_node(head...)//新状态 if(...new...&&!vis[...]...[...]) {//新状态合法且没被访问过 q.push(new); vis[...]...[...]=1;//新状态纪录。 } } } }

有关其中的一些函数,这里有必要解释一下

至于题目,我尽量快更(毕竟我啥都不会qwq

转载于:https://www.cnblogs.com/gongcheng456/p/10705639.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值