| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> LeetCode526优美的排列 -> 正文阅读 |
|
[数据结构与算法]LeetCode526优美的排列 |
LeetCode526优美的排列基于dfs,状态压缩 题目假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数组为一个优美的排列。条件: 第 i 位的数字能被 i 整除 示例1: 输入: 2 第 1 个优美的排列是 [1, 2]: 第 2 个优美的排列是 [2, 1]: 说明: N 是一个正整数,并且不会超过15。 来源:力扣(LeetCode) 方法一:dfs(超时)1.思想:这个方法的想法是,先把1~n个数放在数组里,然后通过dfs,从数组的最后两位开始交换位置,得到所有的排列方式,并在每一次得到新的排列方式时判断是否满足条件12。 2.代码实现
超时。 方法二:dfs+爆搜1.思想:上一个方法是先组合再判断 2.代码实现
节省了很多时间 方法三:dfs+状态压缩1.思想:首次接触状态压缩。 2.代码实现
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 21:28:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |