自己用java写了一个9×9数独解题的小程序,用的是穷举法,解一般的题目问题不大
代码如下:
package Test;
public class SensibleGame {
/**
* @param args
*/
int[][] mainNumber;
boolean[][] flagNumber;
public SensibleGame(int[][] mainNumber)
{
this.mainNumber = mainNumber;
flagNumber = new boolean[9][9];
for(int i=0;i8 || j8)
{
System.out.print("下标越界!");
return;
}
if(previousFlag == false)
{
if(flagNumber[i][j] == true)
{
previousFlag = false;
if(i==8 && j==8)
{
System.out.print("计算结束
");
break;
}
else if(i>=0&&i=0&&i0&&i0&&i0)
{
mainNumber[i][j] = mainNumber[i][j] + 1;
flag = CheckAll(i, j);
}
if(flag == true)
{
previousFlag = false;
if(i==8&&j==8)
{
System.out.println("计算结束
");
break;
}
else if(i>=0&&i0&&i<p>运行结果如下:</p><p>计算结束<br>493516728<br>762498351<br>185372469<br>837925614<br>216843975<br>549761283<br>654137892<br>921684537<br>378259146</p>
登录后复制
以上就是数独解题小程序实现代码的详细内容,更多请关注米云其它相关文章!
