04 2018 档案

摘要:一、实现过程: 首先这个项目我把求解和生成分开写了,生成函数我用回溯法+规则变换来生成终局。先用随机数加回溯生成一个终局,再通过这个终局交换行、列、数字生成1372个终局。这样共需要随机回溯生成1000个左右终局即可。实现过程用了5个函数,分别是dfs回溯生成函数,一个初始化函数,一个随机填数函数, 阅读全文
posted @ 2018-04-12 23:41 Lylist 阅读(169) 评论(0) 推荐(0) 编辑
摘要:精确覆盖问题的定义:给定一个由0-1组成的矩阵,是否能找到一个行的集合,使得集合中每一列都恰好包含一个1 例如:如下的矩阵 就包含了这样一个集合(第1、4、5行) 如何利用给定的矩阵求出相应的行的集合呢?我们采用回溯法 矩阵1: 先假定选择第1行,如下所示: 如上图中所示,红色的那行是选中的一行,这 阅读全文
posted @ 2018-04-08 09:53 Lylist 阅读(195) 评论(0) 推荐(0) 编辑
摘要:Introduction : 标准的数独游戏是在一个 9 X 9 的棋盘上填写 1 – 9 这 9 个数字,规则是这样的: 棋盘分成上图所示的 9 个区域(不同颜色做背景标出,每个区域是 3 X 3 的子棋盘),在每个子棋盘中填充 1 – 9 且不允许重复 ,下面简称块重复 每一行不许有重复值 ,下 阅读全文
posted @ 2018-04-07 12:01 Lylist 阅读(951) 评论(0) 推荐(0) 编辑
摘要:对于数独游戏的研究,我们不免要研究数独游戏的完全解的生成算法,对于完全解的生成过程,我们一般是采用回溯法来产生整个九宫格的所有的数据。而对于九九八十一格的数独游戏完整解生成,我们尝试按常规的回溯方法来实现,不免会出现回溯的解空间过于庞大而导致回溯的时间过长而无法满足游戏中我们产生游戏完全解的需要。为 阅读全文
posted @ 2018-04-02 16:33 Lylist 阅读(2907) 评论(0) 推荐(0) 编辑
摘要:看到这个问题的思路是先解决生成数独生成器的编写,然后再解决数独求解的问题。最开始第一想法就是暴力求解,仔细算一下复杂度,发现这肯定耗时很久,于是看了很多博客(见转载)。我们用回溯搜出来正解。 阅读全文
posted @ 2018-04-02 16:28 Lylist 阅读(103) 评论(0) 推荐(0) 编辑