随笔分类 -  AL_ Memoization

摘要:47. 全排列 II 题意 给定一个可包含重复数字的序列,返回所有不重复的全排列。 示例: 解题思路 去重的全排列就是从第一个数字起每个数分别与它后面非重复出现的数字交换。用编程的话描述就是第i个数与第j个数交换时,要求[i,j)中没有与第j个数相等的数。有两种方法(1)可以每次在需要交换时进行顺序 阅读全文
posted @ 2019-04-08 17:17 banananana 阅读(454) 评论(0) 推荐(0) 编辑
摘要:39. 组合总和 题意 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被选取。 说明: 所有数字(包括 target)都是正整数。解集不能包含重复的组 阅读全文
posted @ 2019-04-04 22:57 banananana 阅读(677) 评论(0) 推荐(0) 编辑
摘要:216. 组合总和 III 题意 找出所有相加之和为 n 的 k 个数的组合。组合中只允许含有 1 - 9 的正整数,并且每种组合中不存在重复的数字。说明:所有数字都是正整数。解集不能包含重复的组合。 示例 1:输入: k = 3, n = 7输出: [[1,2,4]]示例 2:输入: k = 3, 阅读全文
posted @ 2017-08-30 16:03 banananana 阅读(179) 评论(0) 推荐(0) 编辑
摘要:46. 全排列 题意 给定一个没有重复数字的序列,返回其所有可能的全排列。 示例: 解题思路 回溯:遍历数组,两两交换给定对应下标的值; 记忆化:通过遍历当前路径数组,遍历当前的路径数组选择位置来插入index对应的值实现; 实现 阅读全文
posted @ 2017-08-27 08:05 banananana 阅读(129) 评论(0) 推荐(0) 编辑
摘要:22. Generate Parentheses 题意:给定括号个数,生成相互对应的括号组合。 回溯 纪录两边的括号的个数,注意每当右边括号数目和左边数目不再相等的时候,那么需要进行补齐右边的括号。 增加的形式: class Solution(object): def generateParenth 阅读全文
posted @ 2017-08-25 06:18 banananana 阅读(94) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示