社区
C#
帖子详情
100求助一个路径算法(应该算比较简单吧,只是我数学太差)
songjinxi123
2014-06-28 10:14:10
请问图中红色这种路径,算法怎么写?起点是最里面,终点是最外面。谢谢解答。
...全文
153
3
打赏
收藏
100求助一个路径算法(应该算比较简单吧,只是我数学太差)
请问图中红色这种路径,算法怎么写?起点是最里面,终点是最外面。谢谢解答。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
md5e
2014-06-28
打赏
举报
回复
http://bbs.csdn.net/topics/370037670 回塑之走迷宫 /// <summary> /// 走迷宫 /// </summary> protected void findPath() { //初使化地图 int[,] ary_map = new int[8, 12] { { 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1 }, { 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1 }, { 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1 }, { 0, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1 }, { 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1 }, { 0, 0, 0, 0, 1, 0, 1, 1, 1, 1, 0, 0 }, { 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1 }, { 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0 } }; for (int i = 0; i < 8; i++) { for (int j = 0; j < 12; j++) { Response.Write(ary_map[i, j]); } Response.Write("<br/>"); } //开始询址 int s = 0;//记录第几步 int[] st = new int[8 * 12];//记录每步的方向y - 1(上),x + 1(左),y - 1(下),x - 1(右) int x = 0;//第几步的x int y = 0;//第几步的y while (s >= 0) { //判断方向 switch (st[s]) { case 0: y = y - 1;//向上走 break; case 1: x = x + 1;//向左走 break; case 2: y = y + 1;//向下走 break; case 3: x = x - 1;//向右走 break; } //如果碰壁就往回走 if (st[s] > 4 || x < 0 || y < 0 || x >= 12 || y >= 8 || ary_map[y, x] == 1 || ary_map[y, x] == -1) { Loop://判断方向,回退到上一步 switch (st[s]) { case 0: y = y + 1; break; case 1: x = x - 1; break; case 2: y = y - 1; break; case 3: x = x + 1; break; } //换一个方向 st[s] = st[s] + 1; //所有方向都走不通就返回上一步 if (st[s] > 3) { st[s] = 0; s = s - 1; if (s > 0) goto Loop; } } else { //将走过的路径设为-1 ary_map[y, x] = -1; //下一步 s = s + 1; if (x == 11 && y == 7) { break; } } } //询址结束 //输出路径 x = 0; y = 0; string txt=string.Empty; for (int i = 0; i < s; i++) { switch (st[i]) { case 0: y = y - 1; break; case 1: x = x + 1; break; case 2: y = y + 1; break; case 3: x = x - 1; break; } if (st[i] <= 0) { break; } else { txt = (txt == "" ? "" : txt + ",") + string.Format("(x:{0},y:{1})", x, y); } } Response.Write(string.Format("<p>路径为:(x:0,y:0),{0}</p>", txt)); }
骑着蜗牛去爬山
2014-06-28
打赏
举报
回复
http://379910987.blog.163.com/blog/static/33523797201365102453351/
wangnaisheng
2014-06-28
打赏
举报
回复
c#实现迷宫算法。
电动汽车
路径
规划问题(Electric Vehicle-Routing Problem, EVRP)
今天给大家带来的是电动汽车
路径
规划问题(Electric Vehicle-Routing Problem, EVRP)的介绍,按照惯例先上目录,其中第三部分的主要内容出自文献“The Electric Vehicle-Routing Problem with Time Windows and ...
我的凸优化学习之路
“凸优化理论真的很美”这是我学习完之后得到的切身感受。然而,在没认识到庐山真真面目之前,她给我的感受...涉及的优化
算
法
主要是遗传
算
法
,差分进化,粒子群
算
法
等。所读到的文献清一色地“鼓吹”智能优
算
优于传...
莫队
算
法
——从入门到黑题
众所周知,莫队是由莫涛大神提出的,一种玄学毒瘤暴力骗分区间操作
算
法
,它以简短的框架、简单易记的板子和优秀的复杂度闻名于世。然而由于莫队
算
法
应用的毒瘤,很多可做的莫队模板题都有着较高的难度评级,令很多...
180道大厂
算
法
工程师(Python语言)面试题合集
[34] 在排序数组中查找元素的第
一个
和最后
一个
位置left=mid+1else:# 从小区间向内探查,然后确定范围=target:left+=1=target:right-=1'''题目:每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是...
如何快速准备面试中的
算
法
,获得 Offer?
如何快速准备面试中的
算
法
,获得 Offer? 现如今越来越多的公司在面试过程中会考察数据结构和
算
法
。在最近几年,难度颇有上升趋势。因此作为求职者,在面试前刷刷题似乎已经成为准备过程中必不可少的环节了。 在 5 ...
C#
110,533
社区成员
642,574
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章