• Day 61


    第46题:

    给定一个 没有重复 数字的序列,返回其所有可能的全排列。(来自LeetCode)

    1、由(1、2、3)举例,先将1作为第一个,然后后面可以放2、3或者3、2;

      第二次将2作为第一个,然后后面可以1、3或者3、1,将3作为第一个也一样;

      从上面知道每次获得全排列内的某个元素时都是在数字序列中选择元素,,然后将所有的组合都列举出来;

      那么直接利用回溯来穷举所有的例子,当每遍历完一阶段时都回溯到上一阶段来判定其他情况。

      

    第51题:

    皇后问题研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。

    给定一个整数 n,返回所有不同的 n 皇后问题的解决方案。

    每一种解法包含一个明确的 n 皇后问题的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。来源:力扣(LeetCode)

    皇后彼此不能相互攻击,也就是说:任何两个皇后都不能处于同一条横行、纵行或斜线上。

    1、n个皇后,需要放置在n*n的棋盘上,且不能存在两个皇后在同一横纵斜线上,将所有的解决方案都返回;

      可以每行的每列进行判断是否可以放置Q,这样一直递归往下判断,当第n行也放置了Q时,说明这种方案可行,加入结果集合中;

      然后回溯到n-1行判断是否还有其他方案,没有就再次回溯上一层,每次将可行的方案都加入结果集中,最终得出所有的解决方案;

      存放在结果集,返回结果集。

      

  • 相关阅读:
    随意给一组数,找出满足一下条件的a[i],a[i]左边的数小于等于a[i],a[i]右边的数大于等于a[i]
    SVN
    四种进程或线程同步互斥的控制方法
    二叉树转双向链表
    最大连续子序列和
    找出一个字符串中第一个只出现一次的字符
    清除浮动的那些事
    jQuery中ready与load事件的区别
    css 经典布局之圣杯布局(左右固定,中间自适应)
    window.name + iframe跨域实例
  • 原文地址:https://www.cnblogs.com/liang-yi-/p/13619794.html
Copyright © 2020-2023  润新知