基于二部图匹配数独求解程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于二部图匹配数独求解程序

基于二部图匹配数独求解程序   摘要:数独游戏是一个具有组合数学背景的智力游戏。在本文中,我们设计一个基于图论的数独求解程序。我们将数独的状态对应为二部图,数独的求解对应为二部图的匹配求解。运用二部图的匹配理论和算法解决数独问题。从网络上搜集的一些数独题目作为算法的试验数据。对于一些初始状态中含有比较多的数字的题目,我们的程序能够解答出最终答案。   关键词:匹配 二部图 数独   中图分类号:TP3-0 文献标识码:A 文章编号:1007-9416(2016)07-0046-02   Abstract:Sudoku is a combination of mathematical background of the intelligence game. In this paper, we design a Sudoku solver based on graph theory. We will state for the two corresponding Sudoku Sudoku for solving the corresponding graph, matching to solve the two plans. Using the matching theory and algorithm of the two plans to solve Sudoku problem. Some Sudoku collected from the network as the experimental data of the algorithm. For some of the initial state of the problem contains a number of numbers, our program can answer the final answer.   Key Words:matching two figure Sudoku   1 背景和基本定义   数独游戏是一个具有组合数学背景的智力游戏。一个数独题目在一个9 9的方阵上设计和解答。该方阵被划分成9个3 3的称为盒子(box)的小方阵,如图1中粗线所示。方阵的每一个格子恰好可以填入1到9的某一个数字。在游戏的最开始,一部分方格已经填上了数字,如图1。游戏的目标是把方阵余下的每一个格子也填上数字,使得每行,每列和每个盒子的9个格子中都恰含有数字1到9。   我们对方阵的格子如图2进行编号。首先我们对方阵的行和列进行编号。方阵的行,自上而下编号为第1行至第9行。方阵的列,自左到右为编号第1到第9列。然后我们对格子进行编号。位于第r行第c列的格子编号为 (r, c),1 ≤ r, c ≤ 9。由于空间所限,在图2中我们将格子的编号 (r, c) 简写成rc。   在本文中,我们运用二部图的匹配理论来求解数独题目。下面先给出我们将用到的一些图论的基本概念。一个图G=(V, E) 包含一个顶点集合V和一个边集E,E是V的元素的二元组集合。一条边e所包含的两个顶点元素称为e的端点。我们讨论的图都是简单的,也就是不存在一条边,它的两个端点相同;同时,两个端点之间最多只有一条边。一个图称为二部图,如果它的顶点集合可以分成两个子集U和W,使得它的每一条边的两个端点都分别落在U和W中。或者换句话说,在U和W内部没有边。我们把这样的二部图记为G=(U, W)。若|U|=|W|,则称此二部图为平衡二部图。若U中的每个点都与W中的每个点相邻,称此二部图为完全二部图。如果一个图中的两条边具有公共的端点,则称它们相邻。一条边的两个端点也称为相邻的。与一个顶点相邻的所有顶点的集合称为它的邻居。匹配是指图的一个两两不相邻的边集。我们称一条边覆盖它的端点。如果一个匹配中的边覆盖了图的所有顶点,则称此匹配为完美匹配。显然,具有完美匹配的二部图必须是平衡二部图。   一条边和它的端点称为互相关联。一个顶点关联的边的条数,或等价地它的邻居的个数,称为它的度数。取图G的顶点集合V的一个子集V1,构造一个图G1=(V1, E1),其中E1是G中所有两个端点都落在V1中的边的集合,图G1称为顶点子集合V1的导出子图。   2 基于匹配理论的数独求解   我们定义一个动态的二部图G=(U, W),其中U={(1, 1), (1, 2), …, (9, 9)}是数独方阵中格子的集合,而W={1, 2, 3, 4, 5, 6, 7, 8, 9}是格子中可以填入的数字的集合。在一个数独题的最终解中,所有81个格子中的数字都已经确定。如果数字d W填入方格(r, c) U中,那么我们在G中连结d与(r, c)。这样共产生81条边。U中的每一个顶点恰发出一条边到W集合中填在顶点对应

您可能关注的文档

文档评论(0)

130****9768 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档