c++ - 我想用 dijsktra 或类似工具从 5,6 变为 0,10,我想用代码解释路径我不擅长编码:D 所以它的循环无限次
问题描述
每次在这个循环中,直到到达目标和源相同的 x 和 y 坐标然后它已经计算距离这个循环检查每个父位置右下角左上角它不起作用,因为我真的不知道如何修复它:D 我也想要路径的位置在 kont 矩阵中它真的很简单但我被卡住了我不知道如何出去
using namespace std;
int main()
{
int i,j;
row column
int satir=11,stun=13;
这是我要使用的地图,0 表示墙,1 表示你可以移动的道路
int harita[satir][stun] =
{
{0,0,0,1,0,0,0,0,0,0,1,0,0},
{0,1,1,1,1,0,1,1,1,1,1,1,0},
{0,1,0,1,1,1,1,1,1,0,0,1,0},
{0,1,1,1,1,0,1,0,1,1,0,1,0},
{0,1,0,1,0,0,1,0,1,0,0,1,0},
{1,1,0,1,1,1,1,0,1,0,1,1,0},
{0,1,0,0,1,1,1,0,1,1,1,1,0},
{0,1,0,1,1,1,1,1,1,1,1,1,1},
{0,1,0,1,0,0,0,0,0,1,1,1,0},
{0,1,1,1,1,1,1,1,1,1,1,1,0},
{0,0,0,1,0,0,0,0,0,0,0,0,0},
};
我只想在cmd上写地图以供检查
for(i=0; i<satir; i++)
{
for(j=0; j<stun; j++)
{
cout<<" "<<harita[i][j];
}
cout<<endl;
}
// the path i want to write like kont[0][10],kont[0][9],kont[0][8],kont[0][7],kont[0][6],kont[1][6]
int kont[satir][stun];
// distance
int mesafe=0;
// source location start
int dx=0,dy=10;
// target location
int xk=5,yk=6;
每次在这个循环中,直到到达目标和源相同的 x 和 y 坐标然后它已经计算距离这个循环检查每个父位置右下角左上角它不工作 ofc 因为我真的不知道如何修复它:D 我也想位置kont 矩阵中的路径非常简单,但我被卡住了,我不知道如何出去
while(1)
{
if( dx == xk && dy == yk )
{
cout<<"mesafe budur="<<mesafe;
// if source and target same location write the distance and exit while loop
exit(1);
}
// for check loop count
// ofc infinite now
cout<<"kertenkele";
用于寻找最短路径,稍后我将使用它
kont[dx][dy]=1;
每次检查 4 如果没有墙,如果有办法,它会移动到那里,直到到达目标 x 和 y 坐标
去底部
if(harita[dx+1][dy]==1)
{
dx++;
mesafe++;
}
向右走
if(harita[dx][dy+1]==1)
{
dy++;
mesafe++;
}
为了上去
if(harita[dx-1][dy]==1)
{
dx--;
mesafe++;
}
每次都在循环中向左走,检查每个邻居,直到达到目标
if(harita[dx][dy-1]==1)
{
dy--;
mesafe++;
}
}
return 0;
}
问题在于它的循环无限时间好,我想我不太明白
我如何从循环中获取数据
解决方案
推荐阅读
- html - How to hide the asp-for label element if the value of displayfor element is empty?
- javascript - 处理来自回调函数的请求时 Ajax 调用冻结
- wordpress - Random Taxonomies on Post
- arrays - Swift,如何使用带有索引的数组重新排序另一个数组
- node.js - How to write custom validation error on mongoose schema?
- java - Spring-Boot UUID: java.sql.SQLException: Invalid utf8 character string
- javascript - RTSP streaming using node js?
- javascript - How to go to next input by pressing enter in soft keyboard in android web-view phonegap build
- android - Layout_alignParentRight and others aren't working
- java - The system cannot find the path specified: Error while starting zookeeper(Apache Kafka)