再问一下, 如何判断16数码问题是否有解?

LeeMaRS 2004-07-20 08:58:25
前段时间看到过, 不过没记下来, 貌似是群论的置换的内容的. 请知道的大大再说明一下做法, thx~~
...全文
217 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
mmmcd 2004-07-22
<<算法设计与分析>>华中科技大学出版
里面有讲,可惜我的书没带回南宁.
  • 打赏
  • 举报
回复
dengsf 2004-07-22
按从左到右,从上到下的顺序来表示位置先后关系,
两个位置,在前的数比在后的大,就记为一个逆序,
空格不参与任何比较。

要排的状态的逆序数为 0 ;
全部倒置状态的逆序数为 105;

好象是 逆序 为奇数的就不行。这个容易证明。
又好象 逆序为 偶数的就可以~~~
注意,是好象。

PS:huang ?
  • 打赏
  • 举报
回复
dengsf 2004-07-22
错了……

刚搜了一下,
空格看做是 16 也参与计算。
但除了计算逆序之和外,还要加上空格所在位置的修正值。
具体就是,令空格只能上下左右而不能作对角线移动,则加上一个从 右下角到所在位置 的移动步数。

最终结论一样,成双的团圆。
  • 打赏
  • 举报
回复
BlueSky2008 2004-07-21
有些布局是由初始布局经奇数次换位得到的,有些布局是由初始布局经偶数次换位得到的,由奇数次换位得到的布局不可能通过偶数次换位得到。
<<组合数学的算法与程序设计>>这本书你应该有吧,上面有讲的。
  • 打赏
  • 举报
回复
发帖
数据结构与算法

3.2w+

社区成员

数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
帖子事件
创建了帖子
2004-07-20 08:58
社区公告
暂无公告