开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 459|回复: 7
收起左侧

[已解决] 任意二点的相邻途径.递归,树 求解

 关闭 [复制链接]
结帖率:100% (4/4)
发表于 2023-8-28 22:53:00 | 显示全部楼层 |阅读模式   广东省东莞市
11精币
最近做一个地图最优求解的算法,做了很久都没做出来

错误案例寻求帮助.e

10.08 KB, 下载次数: 7

最佳答案

查看完整内容

求迷宫算法 https://bbs.125.la/forum.php?mod=viewthread&tid=14792166 (出处: 精易论坛) 你这个类似他这个 可以看看他们的解法参考一下 他们解法我没细看 既然结帖了 应该是有用的 我就一点碎片时间,要把思路给你整理成完整的代码 要花太多时间 目前办不到

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳

结帖率:100% (18/18)

签到天数: 3 天

发表于 2023-8-28 22:53:01 | 显示全部楼层   福建省泉州市
caskywz 发表于 2023-8-30 00:27
大佬能不能写一个案例 我参考下? 这个节点混乱的问题,我已经困扰二天了.对于递归开始 根目录+子目录[n]+ ...

求迷宫算法
https://bbs.125.la/forum.php?mod=viewthread&tid=14792166
(出处: 精易论坛)

你这个类似他这个    可以看看他们的解法参考一下
他们解法我没细看   既然结帖了  应该是有用的
我就一点碎片时间,要把思路给你整理成完整的代码    要花太多时间    目前办不到

评分

参与人数 2好评 +1 精币 +2 荣誉 +1 收起 理由
项目部004 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!
caskywz + 1 + 2 新技能已get√

查看全部评分

回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 3 天

发表于 2023-8-28 23:20:34 | 显示全部楼层   福建省泉州市
有没有考虑过从终点逆向遍历?
每次遍历包含终点的路径节点,要递归下一级时,删除已走过路径再传参给下一级   找到的节点为终点继续往上遍历,一直到找到起点
这样子会好处理一点
回复

使用道具 举报

结帖率:88% (15/17)
发表于 2023-8-29 01:58:47 | 显示全部楼层   江苏省徐州市
寻路吗?那样A星算法最好用
回复

使用道具 举报

结帖率:100% (4/4)
 楼主| 发表于 2023-8-29 18:13:56 | 显示全部楼层   广东省东莞市
Suky 发表于 2023-8-28 23:20
有没有考虑过从终点逆向遍历?
每次遍历包含终点的路径节点,要递归下一级时,删除已走过路径再传参给下一 ...

我也是这样想的,但是很难..临近的节点 存在死循环..处理死循环还可以用预测剪枝,大概是就是..途径的节点总和超过总节点,那么意味循环了.直接抛弃 ...但是逻辑很难写..我用过二维数组保存节点..然后发现最后保存的邻近最后拟合成一样了..删除的过程中..我无法构建出逻辑..
回复

使用道具 举报

结帖率:100% (18/18)

签到天数: 3 天

发表于 2023-8-29 19:30:04 | 显示全部楼层   福建省泉州市
caskywz 发表于 2023-8-29 18:13
我也是这样想的,但是很难..临近的节点 存在死循环..处理死循环还可以用预测剪枝,大概是就是..途径的节点 ...

逻辑没捋清啊
假设  有10个城  
现在有一个起点和一个终点     那么 一开始  就把终点城从待选数组剔除,然后遍历剩余城中目的地包含该终点的城  放入待循环数组
取数组成员数   开始循环,在循环中   把原本剔除终点城之后剩余城市数组  剔除掉当前循环城市后作为遍历目标城市组   传参进入下一级递归中     如此    城市不能重复     就只会有一条路线
依此类推   直到找到起点城市或者城市已全部遍历结束   没能从终点城市一路遍历找到起点城市

像这样的路线     由于城市之间的互通    会存在多条,如果要找最近路线,在遍历过所有路线后    再去对所有路线做判断即可
回复

使用道具 举报

结帖率:100% (4/4)
 楼主| 发表于 2023-8-30 00:24:30 | 显示全部楼层   广东省东莞市
Suky 发表于 2023-8-29 19:30
逻辑没捋清啊
假设  有10个城  
现在有一个起点和一个终点     那么 一开始  就把终点城从待选数组剔除, ...

嗯啊..所以我搞了一个二维数组,当初也是打算这样弄,..我的想法是国家虽然互通,但是列表是固定..我只要通过可以连通到另外一个A国家,然后A国家列表删除,那么最终有9个..然后匹配可以连接的第二个国家B 在删除B的列表..那么理论上就能拿到有限的途径,在取最短节点,那么应该是最快的方式...然后我硬是没写出来...我递归的时候,分支就发现错乱..第三轮开始..途径就错了..不知道哪里是遍历弄错了..看打印的途径.应该是根节点到下一个节点的变量错乱
回复

使用道具 举报

结帖率:100% (4/4)
 楼主| 发表于 2023-8-30 00:27:47 | 显示全部楼层   广东省东莞市
Suky 发表于 2023-8-29 19:30
逻辑没捋清啊
假设  有10个城  
现在有一个起点和一个终点     那么 一开始  就把终点城从待选数组剔除, ...

大佬能不能写一个案例 我参考下? 这个节点混乱的问题,我已经困扰二天了.对于递归开始 根目录+子目录[n]+子目录 这类的逻辑我没捋清
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表