- 博客(4)
- 资源 (1)
- 收藏
- 关注
原创 数独问题求解代码总结
数独生成: #include"sudoku.h" #include<time.h> using namespace std; char field[200000000]; void Sudoku::openfile(const char* name) { errno_t err; err = fopen_s(&file1, name, "w+"); cout &l...
2020-01-19 22:22:26 1008
原创 数独问题求解五:代码整合与分析、测试
数独问题求解五:代码整合与分析、测试 1、代码整合 编写完成create与solve两个关键代码后,编写用于控制台接收参数的judge.cpp 具体过程较为简单,判断控制台输入的个数以及每个字符串的情况,如果出现异常则返回异常并报错 主函数接收到控制台输入后进行判断,选择进行生成还是解数独,之后调用clock()函数输出程序运行时间。 2、代码分析 不看不知道一看吓一跳 运行代码分析之后,出现了多...
2020-01-18 21:53:21 334
原创 数独问题求解四:解数独
数独问题求解四:解数独 1、心路历程 (写下这段话时我是崩溃的,写了一天的博客没保存,网页卡了一下全都不见了) 初见题目,我首先想到的算法是回溯DFS和暴力搜索,但是后者显然不太现实 抱着学习的心态我从网上找了许多大神对数独的求解,其中DFS和DLX两种算法的使用是最多的,由于时间关系,我对新算法DLX的掌握并不熟练,在此便使用了DFS解题 具体思路: DFS即深度优先搜索,我先对题中的0进行1到...
2020-01-18 01:27:09 500 1
原创 数独问题求解三:数独终局生成
数独问题求解三:数独终局生成 1、主要过程 由上一篇文章可知,本题中解决数独终局的问题的关键是对1e6个数独进行生成 在解决的过程中,我设置了一个全局变量field数组来存储数独 由于最多生成1e6个数独,每个数独由81个数字组成,每一行的最后一位是换行符,因此设置了数组大小为1e8. 数组中数独的数字用字符的形式保存 以下为主要代码段 这段代码为对数独的4到6行进行全排列,共有6种排列方式,因此...
2020-01-16 10:20:59 303
Thinking in C++
2019-04-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人