Jquery暴力解数独
var arry= new Array(); var nums= new Array(); var snum; function numchain() { snum=0; for(var i=0;i<9;i++) { nums[i]=new Array(); for(var j=0;j<9;j++) { if($("#mytb").children().eq(0).children().eq(i).children().eq(j).html()=="") { nums[i][j]=0; arry[snum]=new Array(); arry[snum][0]=i; arry[snum][1]=j; snum++; } else { nums[i][j]=parseInt($("#mytb").children().eq(0).children().eq(i).children().eq(j).html()); } } } } function fill() { for(var i=0;i<9;i++) { for(var j=0;j<9;j++) { $("#mytb").children().eq(0).children().eq(i).children().eq(j).html(nums[i][j]); } } } //解数独-------------------------------------------------------------------------------------- function sukudu() { numchain(); alert(snum+" cells to be filled."); for(var i=0;i<snum;i++) { if(check(arry[i][0],arry[i][1],nums[arry[i][0]][arry[i][1]]+1)==0)i=i-2; if(i==-2){alert("No solution!");break;} } fill(); } //-------------------------------------------------------------------------------------------- //获取可用数字 function check(row,column,start) { for (var i=start;i<10;i++) { if(checkRC(row,column,i)==true && checkS(row,column,i)==true){nums[row][column]=i;return i;} } nums[row][column]=0; return 0; } //行列检查 function checkRC(row,column,value) { for (var i=0;i<9;i++) { if(nums[row][i]==value)return false; if(nums[i][column]==value)return false; } return true; } //方块检查 function checkS(row,column,value) { for (var i=0;i<3;i++) { for(var j=0;j<3;j++) { if(nums[parseInt(row/3)*3+i][parseInt(column/3)*3+j]==value)return false; } }
<table id="mytb" class="tb" contenteditable="true"><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></table>
相信世界是平的
谨记四个字“修身养性”
大江东去浪淘尽英雄,再牛B的人物最后也是一掊土
向善不是目的,而是抚慰心灵,更多的感受幸福,感谢别人给你行善的机会
相信老子的话:万物生于有,有生于无,一切的道理都源于一个无法证明的假设
我是好是坏就自然而然的摆在那里,并不会因为别人的评价而改变什么,我也不需要别人用一张纸来说明我什么,世间最难得的是自由
谨记四个字“修身养性”
大江东去浪淘尽英雄,再牛B的人物最后也是一掊土
向善不是目的,而是抚慰心灵,更多的感受幸福,感谢别人给你行善的机会
相信老子的话:万物生于有,有生于无,一切的道理都源于一个无法证明的假设
我是好是坏就自然而然的摆在那里,并不会因为别人的评价而改变什么,我也不需要别人用一张纸来说明我什么,世间最难得的是自由
支持大额赞助:
![](https://images.cnblogs.com/cnblogs_com/sky-view/883309/o_%E6%97%A0%E6%A0%87%E9%A2%98.png)