个人网站备案网址,wordpress spa,如何在各大网站发布信息,手机怎样做网站1.学会了原来字符串也有比较方法#xff0c;也就是字符串987 98 等等#xff0c;可以解决拼最大数问题
题目链接#xff1a;5.拼数 - 蓝桥云课 (lanqiao.cn)
2.今天又复习了一下bfs#xff0c;感觉还是很不熟练#xff0c;可能是那个过程我些许有点不熟悉#xff…1.学会了原来字符串也有比较方法也就是字符串987 98 等等可以解决拼最大数问题
题目链接5.拼数 - 蓝桥云课 (lanqiao.cn)
2.今天又复习了一下bfs感觉还是很不熟练可能是那个过程我些许有点不熟悉准备再看看bfs然后自己总结一下。
bfs做题步骤
1定义好结构体数组标记数组
2定义好方向数组
3定义好出发点和结束点
4在用结构体定义好起始点给队列起始点的标记数组设置为1。
5while循环条件是队列不能为空
6里面先写结束条件结束条件就是当前走的点走到了结束点
7然后for循环方向数组重新定义当前的xystep让step 1。让当前的xy的标记数组变成1。
8然后弹出来。
标准的bfs模板代码如下
# include iostream
# include queue
using namespace std;
int a[110][110];
bool vis[110][110];
struct Type{int x;int y;int step;
};int dx[] {-1, 0, 1, 0};
int dy[] {0, -1, 0, 1};int main()
{int n, m, x1, x2, y1, y2;queueType q1;cinnm;for(int i 1; i n; i){for(int j 1; j m; j){cina[i][j];}}cinx1y1x2y2;Type start;start.x x1;start.y y1;start.step 0;q1.push(start);vis[x1][x2] 1;int flag 0;while(!q1.empty()){int x q1.front().x, y q1.front().y;if(x x2 y y2){flag 1;coutq1.front().stependl;break;}for(int k 0; k 4; k){int tx, ty;tx q1.front().x dx[k];ty q1.front().y dy[k];if(a[tx][ty] 1 vis[tx][ty] 0){Type temp;temp.x tx;temp.y ty;temp.step q1.front().step 1;q1.push(temp);vis[tx][ty] 1;}}q1.pop();}if(flag 0){cout-1endl;}return 0;
}题目链接7.走迷宫 - 蓝桥云课 (lanqiao.cn)