leetcode 51.N-Queens & 52. N-Queens II

来源:互联网 发布:淘宝上最好卖的是什么 编辑:程序博客网 时间:2024/05/19 17:24

n皇后,dfs


题意:

求解n皇后问题

leetcode51是求所有方案,leetcode52是求方案数


思路:

入门的dfs题目.

按行dfs,每行只有一个皇后,因此枚举它在这行出现在哪列,并判断会不会和前面的行的皇后产生冲突,没有冲突就dfs下一行.能dfs到底就说明有一个新的方案.

判断冲突是用一个数组记录每行皇后所在的列,然后判断会不会同列或者同斜线.

复杂度是很宽松的O(n!),n!是因为第一行最多n种选择,第二行最多n-1种,第三行....n*(n-1)*...*1=n!,但实际上会更小.


总结:

dfs


0 0
原创粉丝点击