一、笔试部分

思路:

1.既然皇后要确定二维的位置,而且前面也有规定不可以同行同列,这是一个很重要的突破点,那么我们就可以先入为主安排不同列的皇后,去匹配到不同列。

2.既然确定好了不同行不同列,那么有一个条件就是相邻列的皇后肯定不是在相邻行,跟这个这个条件可以排列了,一看到排列回溯大法很香。

3.将一个数组的所有排列组合有专门固定的循环方式。

想不通思路的时候,就手画可能性。把可能性画出来!!!,画出来一次后就大概知道思路

注意点:

1.

一个一个压入不能将一行成为一个整体,只有用StringBuff的toString方法可以

首先一行用arr存起来,然后压入4个StringBuffer,再把List的arr一种结果压入list大集合里。

检查的是,i,j是属于列数,先把第一列拿出 和2 ,3,...n列比较,然后再与每行皇后所在的列进行比较,pos代表的是,索引代表列,里面的值代表行数。  是是否在斜线上通过横坐标做差与纵坐标做差看是否相等,如果相等说明是在同一个斜线上。

交换的是不同列上的皇后,将他们的位置互相交换(实际上就是把行数交换),交换后,知道交换出一种结果后就从前往后检查,是否有不符合的,因为Pos[]已经保证他们在不同列和不同行了,因此只需要看斜线是否满足。  第一波用完后 需要还回去,换下一条新开的线(回溯,是有借有还)

1.先要初始化一维数组。

2.经典的一维数组的排列组合的所有可能。

3.将每个排列组合进行筛选,选出合适的压入存储的集合中

4.每行一个List集合,然后4容量的List压入总二维List存储,返回结果

二、搜索类型的高频面试题汇总:

https://blog.csdn.net/qq_40262372/article/details/112702136

三、各种类型的高频面试题汇总:

https://blog.csdn.net/qq_40262372/article/details/112556249

四、如有疑问可加QQ群讨论:725936761 博主免费答疑

51.N皇后 (力扣leetcode) 博主可答疑该问题相关推荐

  1. 力扣(LeetCode)打卡刷题交流计划(长期维护)

    前言 忙忙活活暑期过去了一半,在即将升学的日子里,打算干点什么东西,由于实力以及经验的欠缺没有创群和大家讨论,但我更喜欢以更实在的方式--能作点什么--和大家一起从0打开力扣LeetCode, 对,没 ...

  2. Leetcode-How-What 力扣Leetcode刷题指南

    Leetcode-How-What 力扣Leetcode刷题指南 About the way how to use Leetcode wisely for preparing the intervie ...

  3. 力扣(LeetCode)刷题,简单+中等题(第35期)

    力扣(LeetCode)定期刷题,每期10道题,业务繁重的同志可以看看我分享的思路,不是最高效解决方案,只求互相提升. 第1题:解码异或后的排列 试题要求如下: 回答(C语言): /*** Note: ...

  4. 力扣(LeetCode)刷题,简单+中等题(第34期)

    目录 第1题:整数转罗马数字 第2题:电话号码的字母组合 第3题:二叉树的所有路径 第4题:砖墙 第5题:下一个排列 第6题:括号生成 第7题:删除并获得点数 第8题:全排列 第9题:颜色分类 第10 ...

  5. 力扣(LeetCode)刷题,简单+中等题(第33期)

    目录 第1题:Z 字形变换 第2题:删除字符串中的所有相邻重复项 第3题:基本计算器 II 第4题:螺旋矩阵 第5题:螺旋矩阵 II 第6题:盛最多水的容器 第7题:删除有序数组中的重复项 II 第8 ...

  6. 力扣(LeetCode)刷题,简单+中等题(第32期)

    目录 第1题:数组的度 第2题:托普利茨矩阵 第3题:爱生气的书店老板 第4题:翻转图像 第5题:有效的数独 第6题:无重复字符的最长子串 第7题:区域和检索 - 数组不可变 第8题:二维区域和检索 ...

  7. 力扣(LeetCode)刷题,简单+中等题(第31期)

    目录 第1题:同构字符串 第2题:最后一块石头的重量 第3题:最小路径和 第4题:键盘行 第5题:存在重复元素 II 第6题:两数相加 第7题:三个数的最大乘积 第8题:等价多米诺骨牌对的数量 第9题 ...

  8. 力扣(LeetCode)刷题,简单+中等题(第30期)

    目录 第1题:单词规律 第2题:找不同 第3题:在排序数组中查找元素的第一个和最后一个位置 第4题:使用最小花费爬楼梯 第5题:寻找峰值 第6题:字符串中的第一个唯一字符 第7题:两个数组的交集 II ...

  9. 力扣(LeetCode)刷题,简单+中等题(第29期)

    目录 第1题:分割数组为连续子序列 第2题:翻转矩阵后的得分 第3题:寻找旋转排序数组中的最小值 第4题:乘积最大子数组 第5题:不同路径 第6题:判断路径是否相交 第7题:摆动序列 第8题:单调递增 ...

  10. 力扣(LeetCode)刷题,简单+中等题(第28期)

    目录 第1题:翻转单词顺序 第2题:顺时针打印矩阵 第3题:总持续时间可被 60 整除的歌曲 第4题:字符串的最大公因子 第5题:上升下降字符串 第6题:将数组分成和相等的三个部分 第7题:可被 5 ...

最新文章

  1. html表单c 后台如何接受,前台提交整个表单数据,后台实体类接收
  2. 历届试题 核桃的数量
  3. java移动接口发短信_Java面试零碎知识点
  4. Maven 系列 2:Maven 本地仓库与远程仓库配置完整步骤以及修改 settings.xml 后的完整内容(配置非私服,远程仓储镜像强力推荐阿里云)
  5. Spring-Boot (四) 集成Spring Security
  6. 解决Ubuntu18.04没有声音(简便且终极方法)
  7. CSS之设置p段落中的文字与页面左侧缩进两个字符!...
  8. java day49【综合案例day01】
  9. YOLO V1论文理解
  10. Fiddler2 http抓包和https抓包
  11. mysql的驱动jar包_各版本MySQL数据库驱动程序jar包大全(java连接mysql驱动jar包)
  12. ubuntu+i3wm桌面
  13. zipEntry.getSize()=-1
  14. 使用机器学习对美股涨跌预测系统的探究
  15. cpu飙升 死循环_CPU飙升问题的解决实例
  16. Python+Selenium程序执行完,chrome浏览器自动关闭解决方案
  17. Java实现八皇后算法
  18. 不要USB数据线调试Android开发
  19. 这个行情,币圈小白该如何生存?
  20. LPC1768用官方库中用寄存器开启两个硬件PWM

热门文章

  1. 清理数据_Python数据清理终极指南(2020版)
  2. python学习大纲-Python学习大纲,全网最清晰学习思路
  3. y空间兑换代码_如何让Python代码加速运行?
  4. BNU 背包密码(编码与解密)
  5. NYOJ 表达式求最值305
  6. 【算法原理+洛谷P6114+HDU6761】Lyndon分解
  7. 【模版题】树状数组(单点修改+区间查询)
  8. 【技巧总结】string和char[]之前的相互转换(c_str()+strcpy+stringstream.str())
  9. net core mysql开源框架_.net core 基于Dapper 的分库分表开源框架(core-data)
  10. badboy html5,html5_ol.htm