标题:迷宫专题
只看楼主
yangfanconan
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:10
帖 子:397
专家分:541
注 册:2009-9-22
得分:0 
不错啊。
2011-07-08 11:39
BlueGuy
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:29
帖 子:4476
专家分:4055
注 册:2009-4-18
得分:0 
我刚才也写了一个, 不过我只对4个方向搜索
h = f + g
// 结点初始化
void AStarNodeInit(AStartListNode* current, AStartListNode* father, int x, int y, int endX, int endY)
{
    current->x = x;
    current->y = y;
    current->father = father;
    current->next = NULL;

    if (father != NULL)
    {
        current->f = father->f + 1;
    }
    else
    {
        current->f = 0;
    }

    current->g = abs(endX - x) + abs(endY - y);
    current->h = current->f + current->g;
}

你在搜索8个方向的时候,写的繁琐了
int offsetX[] = { 0, -1, 0, 1 };
int offsetY[] = { -1, 0, 1, 0 };
            
for (i = 0; i < sizeof(offsetX); i++)
{
    x = current->x + offsetX[i];
    y = current->y + offsetY[i];

    if (x < 0 || x >= mapWidth || y < 0 || y >= mapHeight)
    {
        continue;
    }
}

代码的正确性可以保证,置顶一下,一起学习学习 laoyang 的代码.,

[ 本帖最后由 BlueGuy 于 2011-9-25 13:52 编辑 ]

我就是真命天子,顺我者生,逆我者死!
2011-09-25 13:07
BlueGuy
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:29
帖 子:4476
专家分:4055
注 册:2009-4-18
得分:0 
其实, BFS(队列), DFS(栈), A*(优先队列) 搜索的时候,路径是定下来的,
每次运行程序得到的都是同一组解就能说明这一点。

我个人觉得随机队列 实现的搜索称为 "盲目搜索" 比较合适,
它真的是盲目, 人力不能确定结果.

我写的那个A*, 也是用 链表 模拟的 优先队列, 不过改名为 PriorityQueue更合适一点
队列、栈、优先队列、随机队列 记得是统称为广义队列的。

[ 本帖最后由 BlueGuy 于 2011-9-25 14:31 编辑 ]

我就是真命天子,顺我者生,逆我者死!
2011-09-25 14:19
lazycamels
Rank: 1
等 级:新手上路
帖 子:34
专家分:7
注 册:2011-9-13
得分:0 
顶,看看再说
2011-09-25 16:42
g79134682
Rank: 2
等 级:论坛游民
帖 子:80
专家分:75
注 册:2011-7-29
得分:0 
楼主好人。。。
2011-09-25 19:59
g79134682
Rank: 2
等 级:论坛游民
帖 子:80
专家分:75
注 册:2011-7-29
得分:0 
楼主好人。。。错的啊。。。错的啊、。
2011-09-25 20:00
lin471306489
Rank: 4
等 级:业余侠客
帖 子:136
专家分:247
注 册:2011-8-16
得分:0 
给点我吧
2011-09-25 21:43
waterstar
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:984
专家分:2810
注 册:2010-2-12
得分:0 
说实话,对这种看名字就恐怖的算法心理发憷啊,没信心去看

冰冻三尺,非一日之寒;士别三日,不足刮目相看!
2011-09-25 23:07
fedcab123
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:168
专家分:100
注 册:2011-9-3
得分:0 
看不明白……
2011-09-26 13:15
徐仁强
Rank: 2
等 级:禁止访问
帖 子:26
专家分:42
注 册:2011-9-14
得分:0 
0.0
2011-09-27 00:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-342131-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.026911 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved