作者geo760217 (Tc)
看板java
标题Re: [问题] sudoku
时间Thu May 3 23:51:53 2007
※ 引述《Lordaeron (Terry)》之铭言:
: ※ 引述《geo760217 (Tc)》之铭言:
: : 在写sudoku时遇到一个问题
: : 如果需要倒回去的时候
: : 後面的数字会和需要倒回去的数字重复
: : 所以无法更新已填过的数字
: : 该怎麽解决呢?
: undo 是吧?
: 就user 每个一份, 就先留一份copy不就好了.
: 当然, 你可以想一下dancing link
undo 之後值又变成不合法的了= =
这是我的source code
真的不知道该在哪里undo
public void fillCell(int n) {
if(n==stackSize)
{
nSolutions++;
return;
}
for(int k=1;k<=9;k++)
{
if(boardOK(stack[n][1],stack[n][2],k))
{
stack[n][0]=k;
board[stack[n][1]][stack[n][2]]=k;
fillCell(n+1);
}
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.140.50
※ 编辑: geo760217 来自: 140.119.140.50 (05/03 23:52)