广搜的学习
来源:互联网 发布:百度股票数据接口api 编辑:程序博客网 时间:2024/04/28 05:12
#include<stdio.h>#include<iostream>#include<string.h>#include<queue>using namespace std;int N, K;const int MAXN = 100000;int visited[MAXN + 10];struct Step{ int x; int steps; Step(int xx, int s):x(xx),steps(s){}};queue<Step>q;int main(){ cin >> N >> K; memset(visited, 0, sizeof(visited)); q.push(Step(N, 0)); visited[N] = 1; while(!q.empty()) { Step s = q.front(); if( s.x == K ) { cout << s.steps << endl; return 0; } else///从当前可以扩展的节点统统地扩展,并对扩展过的节点标记,不重复扩展,广度优先搜索一般适用于从父节点到子节点比较明确的情况, { ///同一层的节点正常情况相同对待就可以了,不仅适用于图类问题,用的比较广泛 if( s.x-1 >= 0 && !visited[s.x-1] ) { q.push(Step(s.x-1, s.steps+1)); visited[s.x-1] = 1; } if( s.x+1 <= MAXN && !visited[s.x+1]) { q.push(Step(s.x+1, s.steps+1)); visited[s.x+1] = 1; } if( s.x*2 <= MAXN && !visited[s.x*2] ) { q.push(Step(s.x*2, s.steps+1)); visited[s.x*2] = 1; } q.pop(); } } return 0;}
0 0
- 广搜的学习
- 关于广搜的学习
- 预处理的广搜
- 母亲的牛奶【广搜】
- MX的密码锁 (广搜)
- 广搜(BFS)学习笔记
- 广搜
- 广搜
- 广搜
- 广搜
- 广搜
- 广搜
- 广搜与深搜的区别
- 图的深搜与广搜
- 图的深搜与广搜
- 深搜和广搜的区别
- 深搜与广搜的特点
- 深搜与广搜的区别
- 南邮 OJ 1542 GCC
- SQL Server 清理数据库日志文件
- seo思维 - 解放双手不在做互联网“民工”
- 悼念512汶川大地震遇难同胞——来生一起走(我的第一个递归)
- 关于APP接口设计
- 广搜的学习
- 南邮 OJ 1544 Slash
- Lineland Mail
- 152 - Maximum Product Subarray 错误记录
- 动态规划
- 用$.post为ComboBox请求的数据添加一个选项
- 浅析常用排序算法的思想及实现
- CUDNN v3特性
- 南邮 OJ 1545 WHUgirls