N-Queens问题是回溯法的典型问题,之前的博客有提到,不过觉得有些不完善,刚好这边的leetcode也刷到了就再拿出来总结一遍。
一,题目简述
The n-queens puzzle is the problem of placing n queens on an n×n chessboard such that no two queens attack each other.
Given an integer n, return all distinct solutions to the n-queens puzzle.
Each solution contains a distinct board configuration of the n-queens' placement, where 'Q'
and '.'
both indicate a queen and an empty space respectively.
大意就是n皇后游戏,棋盘上每个皇后之间不能在同一行同一列同一对角线,求n皇后游戏可行解的输出。测试样例见leetcode第51题。
二,题目分析
回溯法
n皇后问题的解法有很多,不过面试或笔试题要解的肯定是回溯法。回溯法是一种很简单的算法,大意就是你把求解的过程扔给回溯函数,算法会自动查找可行解并判断是