leetcode每日一题——51
&nbsp;public&nbsp;static&nbsp;List<List<String>>&nbsp;solveNQueens(int&nbsp;n)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List<List<String>>&nbsp;res&nbsp;=new&nbsp;ArrayList<>();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(n<=0)&nbsp;return&nbsp;res;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;helper(res,new&nbsp;int&nbsp;[n],0);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;res;
&nbsp;&nbsp;&nbsp;&nbsp;}
private&nbsp;static&nbsp;void&nbsp;helper(List<List<String>>&nbsp;res,&nbsp;int[]&nbsp;queen,&nbsp;int&nbsp;pos)&nbsp;{
if(pos==queen.length)&nbsp;{
addsolution(res,queen);
return&nbsp;;
}
for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;queen.length;&nbsp;i++)&nbsp;{
queen[pos]=i;
if&nbsp;(isvalid(queen,pos))&nbsp;{
helper(res,&nbsp;queen,&nbsp;pos+1);
}
}
}
private&nbsp;static&nbsp;boolean&nbsp;isvalid(int&nbsp;queen[],int&nbsp;pos)&nbsp;{
for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;queen.length;&nbsp;i++)&nbsp;{
if&nbsp;(queen[i]==queen[pos])&nbsp;{
return&nbsp;false;
}else&nbsp;if&nbsp;(Math.abs(queen[pos]-queen[i])==Math.abs(i-pos))&nbsp;{
return&nbsp;false;
}
}
return&nbsp;true;
}
超出字数了。。。。。。
全部评论

相关推荐

牛客245670684号:虚拟货币预测正确率百分之99,还要找工作干嘛,不早就财富自由了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务