使用道具 举报
引用第223楼coolman于2008-10-17 21:01发表的 : 看看哪里的逻辑出现问题? 写了个程序,本来是打算搜索最少步的,不过发现有问题。不知道问题出在哪里? 程序思路如下: .......
引用第225楼coolman于2008-10-17 21:52发表的 : 晕,看来还得自己解决。 问题出现在修改记录。发现原来的步数大则修改。假设有位置连接如下: a->b->c->d 记录的步数分别为10,11,12,13 后来发现从e->c位置只需步数5. 于是记录变为为:e->c->d, d的步数变为6。 但实际存在下面的可能性: 进一步搜索可能发现f->b的位置只需要步数1。此时原来的记录为f->b->c->d, c,d的步数分别为2和3。显然更少。但因为前面已经修改,导致d的步数仍然为6。 这也解释了为什么发现原来的步数大则修改后继续搜索有效了。 继续搜索,上面的情况会变成f->b->c->d。照理应该解决了啊。 但实际还有问题,还有什么可能? .......
引用第225楼coolman于2008-10-17 21:52发表的 : 晕,看来还得自己解决。 问题出现在修改记录。发现原来的步数大则修改。假设有位置连接如下: a->b->c->d .......
本版积分规则 发表回复 回帖后跳转到最后一页
Archiver|手机版|小黑屋|网上读书园地
GMT+8, 2025-12-18 00:48 , Processed in 0.094987 second(s), 4 queries , Redis On.
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.