文章分类 -  leetcode刷题

摘要:# 题目 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) = 0,F(1) = 1 F(n) = F(n - 1) + F(n - 2),其中 n > 1 给定 n ,请计算 F(n) 。 # 阅读全文
posted @ 2023-06-27 11:22 铜锣湾陈昊男 阅读(13) 评论(0) 推荐(0)
摘要:![](https://img2023.cnblogs.com/blog/2348601/202306/2348601-20230627110046601-2026373878.png) 阅读全文
posted @ 2023-06-27 11:01 铜锣湾陈昊男 阅读(11) 评论(0) 推荐(0)
摘要:题目 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标。 示例 1: 输入:nums = [2,3,1,1,4] 输出:true 解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 阅读全文
posted @ 2023-04-23 15:32 铜锣湾陈昊男 阅读(8) 评论(0) 推荐(0)
摘要:题目 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案 阅读全文
posted @ 2023-04-20 10:24 铜锣湾陈昊男 阅读(9) 评论(0) 推荐(0)
摘要:题目 给你一份航线列表 tickets ,其中 tickets[i] = [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 开始。如果存在多种有效的行程,请你按字典排序返回最 阅读全文
posted @ 2023-04-19 11:46 铜锣湾陈昊男 阅读(6) 评论(0) 推荐(0)
摘要:#递归函数和回溯法什么时候需要返回值?什么时候不需要返回值?这里总结如下三点: 如果需要递归返回值,递归函数就不要返回值。(这种情况就是本文下半部分介绍的113.路径总和ii) 如果需要处理递归返回值,递归函数就需要返回值。 (这种情况我们在236. 二叉树的最近公共祖先 (opens new wi 阅读全文
posted @ 2023-04-17 19:35 铜锣湾陈昊男 阅读(53) 评论(0) 推荐(0)
摘要:题目 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums = [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1,1]] 示例 2: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3] 阅读全文
posted @ 2023-04-13 15:05 铜锣湾陈昊男 阅读(6) 评论(0) 推荐(0)
摘要:题目 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums = [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 示例 2: 输入:nums = [0,1 阅读全文
posted @ 2023-04-12 12:55 铜锣湾陈昊男 阅读(5) 评论(0) 推荐(0)
摘要:说明 这个题型说明了很多问题,首先是startIndex的使用 其次是同一数层的去重,和前面的去重还不一样,因为原数组是不能排序的 还有什么时候应该在终止条件中return 题目 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 阅读全文
posted @ 2023-04-11 13:00 铜锣湾陈昊男 阅读(18) 评论(0) 推荐(0)
摘要:题目 给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。 示例 1: 输入:nums = [1,2,2] 输出:[[],[1],[1,2],[1,2,2],[2],[2,2]] 示例 2: 阅读全文
posted @ 2023-04-10 15:23 铜锣湾陈昊男 阅读(3) 评论(0) 推荐(0)
摘要:题目 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] 示 阅读全文
posted @ 2023-04-10 15:19 铜锣湾陈昊男 阅读(25) 评论(0) 推荐(0)
摘要:题目 有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。 例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312" 和 "192.1 阅读全文
posted @ 2023-04-08 18:09 铜锣湾陈昊男 阅读(11) 评论(0) 推荐(0)
摘要:题目 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s = "aab" 输出:[["a","a","b"],["aa","b"]] 示例 2: 输入:s = "a" 输出:[["a 阅读全文
posted @ 2023-04-07 16:32 铜锣湾陈昊男 阅读(7) 评论(0) 推荐(0)
摘要:题目 给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意:解集不能包含重复的组合。 示例 1: 输入: candidates = 阅读全文
posted @ 2023-04-06 17:26 铜锣湾陈昊男 阅读(5) 评论(0) 推荐(0)
摘要:题目 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制重复被选取 阅读全文
posted @ 2023-04-06 17:21 铜锣湾陈昊男 阅读(6) 评论(0) 推荐(0)
摘要:题目 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = "23" 输出:["ad","ae","af","bd","be","bf","cd"," 阅读全文
posted @ 2023-04-06 17:18 铜锣湾陈昊男 阅读(12) 评论(0) 推荐(0)
摘要:非map和set容器 这里这样区别的原因是之前已经有过很多容器的基本操作实践,像一些插入、删除、遍历一类的,因为map和set容器的特殊性,所以另外分开。 set容器 set的排序操作 #include <iostream> #include <vector> #include <string> # 阅读全文
posted @ 2023-04-06 16:05 铜锣湾陈昊男 阅读(12) 评论(0) 推荐(0)
摘要:仿函数 仿函数的类别定义中必须重载函数调用operator() //仿函数特性:都是需要操作符重载一下(),因为需要让他拥有函数的特性 greater<int> g; cout<< g(1,3) << endl; cout<< greater<int>()(1,3) <<endl;//g 相当于 g 阅读全文
posted @ 2023-04-04 20:18 铜锣湾陈昊男 阅读(4) 评论(0) 推荐(0)
摘要:题目 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9 每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回。 示例 1: 输入: k = 3, n = 7 输出: [[1,2,4]] 解释: 1 + 2 + 4 阅读全文
posted @ 2023-04-04 12:59 铜锣湾陈昊男 阅读(5) 评论(0) 推荐(0)