N 皇后,LeetCode 51 题,用递归和回溯巧妙解出来
鲁迅曾说过,有一段时间没有刷二哥的 LeetCode 刷题笔记了,心里痒痒的,今天我们开始刷 N 皇后吧,这道题可有意思了,比天天背八股来得开心多了。
题意
按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。
n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。
给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。
每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。
难度
困难
示例
示例 1:
输入:n = 4
输出:[
[".Q..",
"...Q",
"Q...",
"..Q."],
["..Q.",
"Q...",
"...Q",
".Q.."]]
解释:如上图所示,4 皇后问题存在两个不同的解法。
示例 2:
输入:n = 1
输出:[["Q"]]
分析<
真诚点赞 诚不我欺
回复