uva
cosmos——iwiwi
这个作者很懒,什么都没留下…
展开
-
2021-01-10
8数码问题 题意:在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局,找到一种最少步骤的移动方法,实现从初始布局到目标布局的转变。 基本的框架不难确定,这道题目就是一个状态空间搜索的题目。运用基本的BFS就可以搞定。 把当前已经造成的局面看成一个节点,然后往下扩展就行了。 但是这道问题的关键在于如何去判重。 除了可以用集合外,我们可以把每一个状态进行编码方便我们去管理。 那问原创 2021-01-10 15:29:05 · 98 阅读 · 1 评论 -
2021-01-07
uva1354 mobile computing 紫书上面枚举的类型说的是有集合与排列。 其实任何问题都可以归结为这两类。 这道题实际上是枚举二叉树 二叉树的枚举方法实际上就是子集的枚举 做到这一点就可以合理的枚举了 但由于我的基础不够,我的问题还有以下几个方面: 树形结构用什么表示?图中我们用动态数组来表示,那么我们也可以用动态数组来表示二叉树结构。但是每个二叉树应该保存的是最左端的距离与最右端的距离表示,所以就有了如下结构。 枚举的基本框架不太确定。这也许有可能是因为我并不太了解生成测试法与回溯法的基原创 2021-01-07 20:04:38 · 87 阅读 · 0 评论