随笔分类 -  数据结构与算法

上一页 1 2 3 4 5 6 7 8 ··· 10 下一页

0860-柠檬水找零
摘要:在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。 每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。 注意,一开始你手头没有任何零钱。 给你 阅读全文

posted @ 2021-11-24 08:32 进击的davis 阅读(61) 评论(0) 推荐(0)

1005-K 次取反后最大化的数组和
摘要:给定一个整数数组 A,我们只能用以下方法修改该数组:我们选择某个索引 i 并将 A[i] 替换为 -A[i],然后总共重复这个过程 K 次。(我们可以多次选择同一个索引 i。) 以这种方式修改数组后,返回数组可能的最大和。 示例 1: 输入:A = [4,2,3], K = 1 输出:5 解释:选择 阅读全文

posted @ 2021-11-24 08:03 进击的davis 阅读(37) 评论(0) 推荐(0)

0455-分发饼干
摘要:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。 对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得 阅读全文

posted @ 2021-11-23 23:26 进击的davis 阅读(32) 评论(0) 推荐(0)

0332-重新安排行程
摘要:给你一份航线列表 tickets ,其中 tickets[i] = [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 开始。如果存在多种有效的行程,请你按字典排序返回最小的行 阅读全文

posted @ 2021-11-23 22:42 进击的davis 阅读(63) 评论(0) 推荐(0)

0491-递增子序列
摘要:给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。 示例 1: 输入:nums = [4,6,7,7] 输出:[[4,6],[4,6,7] 阅读全文

posted @ 2021-11-23 08:17 进击的davis 阅读(37) 评论(0) 推荐(0)

0037-解数独
摘要:编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。(请参考示例图) 数独部分空格内已填入了数字,空白格用 '.' 表示。 示例: 输入: 阅读全文

posted @ 2021-11-22 22:57 进击的davis 阅读(118) 评论(0) 推荐(0)

0051-N皇后
摘要:n 皇后问题 研究的是如何将 n 个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。 示例 1: 输入:n = 阅读全文

posted @ 2021-11-22 22:22 进击的davis 阅读(47) 评论(0) 推荐(0)

0047-全排列II
摘要:给定一个可包含重复数字的序列 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],[2 阅读全文

posted @ 2021-11-22 21:39 进击的davis 阅读(40) 评论(0) 推荐(0)

028-实现strStr()
摘要:实现 strStr() 函数。 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串出现的第一个位置(下标从 0 开始)。如果不存在,则返回 -1 。 https://leetcode-cn.com/problems/implement- 阅读全文

posted @ 2021-11-22 09:51 进击的davis 阅读(35) 评论(0) 推荐(0)

0046-全排列
摘要:给定一个不含重复数字的数组 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 @ 2021-11-22 08:22 进击的davis 阅读(41) 评论(0) 推荐(0)

0090-子集II
摘要:给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。 示例 1: 输入:nums = [1,2,2] 输出:[[],[1],[1,2],[1,2,2],[2],[2,2]] 示例 2: 输入 阅读全文

posted @ 2021-11-21 23:05 进击的davis 阅读(50) 评论(0) 推荐(0)

0078-子集
摘要:给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] 示例 2 阅读全文

posted @ 2021-11-21 22:48 进击的davis 阅读(105) 评论(0) 推荐(0)

0093-复原IP地址
摘要:有效 IP 地址 正好由四个整数(每个整数位于 0 到 255 之间组成,且不能含有前导 0),整数之间用 '.' 分隔。 例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312" 和 "192.168@ 阅读全文

posted @ 2021-11-21 22:31 进击的davis 阅读(16) 评论(0) 推荐(0)

0131-分割回文串
摘要:给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 1: 输入:s = "aab" 输出:[["a","a","b"],["aa","b"]] 示例 2: 输入:s = "a" 输出:[["a"]] 阅读全文

posted @ 2021-11-21 21:38 进击的davis 阅读(46) 评论(0) 推荐(0)

0216.-组合总和 III
摘要:找出所有相加之和为 n 的 k 个数的组合。组合中只允许含有 1 - 9 的正整数,并且每种组合中不存在重复的数字。 说明: 所有数字都是正整数。 解集不能包含重复的组合。 示例 1: 输入: k = 3, n = 7 输出: [[1,2,4]] 示例 2: 输入: k = 3, n = 9 输出: 阅读全文

posted @ 2021-11-21 21:07 进击的davis 阅读(28) 评论(0) 推荐(0)

0040-组合总和II
摘要:给定一个数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用一次。 注意:解集不能包含重复的组合。 示例 1: 输入: candidates = [10,1,2,7, 阅读全文

posted @ 2021-11-21 17:56 进击的davis 阅读(16) 评论(0) 推荐(0)

0039-组合总和
摘要:给定一个无重复元素的正整数数组 candidates 和一个正整数 target ,找出 candidates 中所有可以使数字和为目标数 target 的唯一组合。 candidates 中的数字可以无限制重复被选取。如果至少一个所选数字数量不同,则两种组合是唯一的。 对于给定的输入,保证和为 t 阅读全文

posted @ 2021-11-21 17:18 进击的davis 阅读(44) 评论(0) 推荐(0)

0017-电话号码的字母组合
摘要:给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例 1: 输入:digits = "23" 输出:["ad","ae","af","bd","be","bf","cd","ce" 阅读全文

posted @ 2021-11-21 16:06 进击的davis 阅读(88) 评论(0) 推荐(0)

0077-组合
摘要:给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 示例 2: 输入:n = 1, k = 1 阅读全文

posted @ 2021-11-21 15:19 进击的davis 阅读(281) 评论(0) 推荐(0)

1365-有多少小于当前数字的数字
摘要:给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。 换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。 以数组形式返回答案。 示例 1: 输入:nums = [8, 阅读全文

posted @ 2021-11-20 23:43 进击的davis 阅读(65) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 ··· 10 下一页

导航