深度优先遍历,然后回溯
思考得到的技巧:
1.先思考怎么用学过的数据结构解题
2.回溯不只需要知道最后一步,还需要知道之前所走的每一步
3. 棋盘的生成,''.join([]),可以变列表为字符串
看题解得到的技巧:
1.妙啊,每次的题解的优秀都体现在了位运算上,就非常提高效率:
x&(-x) 得到最低位的’1‘
x&(x-1)将最低位的’1‘变为’0‘
(1<<n-1)&x 对x进行截断
2.制造棋盘的时候
'.'*5 = '.....'
['.']*5 = ['.' , '.' ,.....
3. 对题目的转换,居然可以把左右对角线,转换为左右移。!!妙