力扣
CC‘s World
这个作者很懒,什么都没留下…
展开
-
【力扣】1539. 第 k 个缺失的正整数--Python实现
【题目描述】给你一个 严格升序排列 的正整数数组 arr 和一个整数 k 。请你找到这个数组里第 k 个缺失的正整数。示例 1:输入:arr = [2,3,4,7,11], k = 5输出:9解释:缺失的正整数包括 [1,5,6,8,9,10,12,13,…] 。第 5 个缺失的正整数为 9 。示例 2:输入:arr = [1,2,3,4], k = 2输出:6解释:缺失的正整数包括 [5,6,7,…] 。第 2 个缺失的正整数为 6 。来源:力扣(LeetCode)链接:http原创 2021-03-09 12:12:55 · 549 阅读 · 0 评论 -
【力扣】10. 正则表达式匹配--Python实现
【题目描述】给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。示例 1:输入:s = “aa” p = “a”输出:false解释:“a” 无法匹配 “aa” 整个字符串。示例 2:输入:s = “aa” p = “a*”输出:true解释:因为 ‘*’ 代表可以匹配零个或多个前面的那一个元素, 在这里前面的元素就是原创 2021-03-08 19:00:42 · 404 阅读 · 0 评论 -
【力扣】4. 最长回文子串--Python实现
【题目描述】给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-palindromic-substring【解题思路】用动态规划原创 2021-03-08 11:19:14 · 295 阅读 · 0 评论 -
【力扣】1411. 给 N x 3 网格图涂色的方案数--Python实现
【题目描述】你有一个 n x 3 的网格图 grid ,你需要用 红,黄,绿 三种颜色之一给每一个格子上色,且确保相邻格子颜色不同(也就是有相同水平边或者垂直边的格子颜色不同)。给你网格图的行数 n 。请你返回给 grid 涂色的方案数。由于答案可能会非常大,请你返回答案对 10^9 + 7 取余的结果。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/number-of-ways-to-paint-n-3-grid【解题思路】类似于这样原创 2021-03-07 13:32:01 · 753 阅读 · 0 评论 -
【力扣】3. 无重复字符的最长子串--Python实现
【题目描述】给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一原创 2021-03-07 13:17:17 · 449 阅读 · 0 评论 -
序列和--Python实现
【题目描述】给出一个正整数N和长度L,找出一段长度大于等于L的连续非负整数,他们的和恰好为N。答案可能有多个,我我们需要找出长度最小的那个。例如 N = 18 L = 2:5 + 6 + 7 = 183 + 4 + 5 + 6 = 18都是满足要求的,但是我们输出更短的 5 6 7输入描述:输入数据包括一行: 两个正整数N(1 ≤ N ≤ 1000000000),L(2 ≤ L ≤ 100)输出描述:从小到大输出这段连续非负整数,以空格分隔,行末无空格。如果没有这样的序列或者找出的序列长度原创 2021-03-06 12:24:25 · 281 阅读 · 0 评论 -
【力扣】1089. 复写零--Python实现
【题目描述】给你一个长度固定的整数数组 arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。注意:请不要在超过该数组长度的位置写入元素。要求:请对输入的数组 就地 进行上述修改,不要从函数返回任何东西。示例 1:输入:[1,0,2,3,0,4,5,0]输出:null解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]示例 2:输入:[1,2,3]输出:null解释:调用函数后,输入的数组将被修改为:[1,2,3]提示:1 <= arr.原创 2021-02-02 22:21:16 · 249 阅读 · 0 评论 -
【力扣】1051. 高度检查器--Python实现
【题目描述】学校在拍年度纪念照时,一般要求学生按照 非递减 的高度顺序排列。请你返回能让所有学生以 非递减 高度排列的最小必要移动人数。注意,当一组学生被选中时,他们之间可以以任何可能的方式重新排序,而未被选中的学生应该保持不动。示例:输入:heights = [1,1,4,2,1,3]输出:3解释:当前数组:[1,1,4,2,1,3]目标数组:[1,1,1,2,3,4]在下标 2 处(从 0 开始计数)出现 4 vs 1 ,所以我们必须移动这名学生。在下标 4 处(从 0 开始计数)原创 2021-02-02 21:23:41 · 206 阅读 · 0 评论 -
【力扣】1002. 查找常用字符--Python实现
【题目描述】给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表。例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 次。你可以按任意顺序返回答案。示例 1:输入:[“bella”,“label”,“roller”]输出:[“e”,“l”,“l”]示例 2:输入:[“cool”,“lock”,“cook”]输出:[“c”,“o”]提示:1 <= A.length <= 1001原创 2021-02-02 20:54:24 · 209 阅读 · 0 评论 -
【力扣】1013. 将数组分成和相等的三个部分--Python实现
【题目描述】给你一个整数数组 A,只有可以将其划分为三个和相等的非空部分时才返回 true,否则返回 false。形式上,如果可以找出索引 i+1 < j 且满足 A[0] + A[1] + … + A[i] == A[i+1] + A[i+2] + … + A[j-1] == A[j] + A[j-1] + … + A[A.length - 1] 就可以将数组三等分。示例 1:输入:[0,2,1,-6,6,-7,9,1,2,0,1]输出:true解释:0 + 2 + 1 = -6 + 6原创 2021-02-02 19:59:50 · 442 阅读 · 0 评论 -
【力扣】922. 按奇偶排序数组 II--Python实现
【题目描述】给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数。对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数;当 A[i] 为偶数时, i 也是偶数。你可以返回任何满足上述条件的数组作为答案。示例:输入:[4,2,5,7]输出:[4,5,2,7]解释:[4,7,2,5],[2,5,4,7],[2,7,4,5] 也会被接受。提示:2 <= A.length <= 20000A.length % 2 == 00 <= A[i] <= 100原创 2021-01-29 20:02:53 · 227 阅读 · 0 评论 -
【力扣】977. 有序数组的平方--Python实现
【题目描述】给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100]示例 2:输入:nums = [-7,-3,2,3,11]输出:[4,9,9,49,121]提示:1 <= nums.length <= 104-104 <原创 2021-01-29 19:51:03 · 644 阅读 · 0 评论 -
【力扣】941. 有效的山脉数组--Python实现
【题目描述】给定一个整数数组 A,如果它是有效的山脉数组就返回 true,否则返回 false。让我们回顾一下,如果 A 满足下述条件,那么它是一个山脉数组:A.length >= 3在 0 < i < A.length - 1 条件下,存在 i 使得:A[0] < A[1] < … A[i-1] < A[i]A[i] > A[i+1] > … > A[A.length - 1]示例 1:输入:[2,1]输出:false示例 2:输原创 2021-01-27 22:52:27 · 288 阅读 · 0 评论 -
【力扣】914. 卡牌分组--Python实现
【题目描述】给定一副牌,每张牌上都写着一个整数。此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:每组都有 X 张牌。组内所有的牌上都写着相同的整数。仅当你可选的 X >= 2 时返回 true。示例 1:输入:[1,2,3,4,4,3,2,1]输出:true解释:可行的分组是 [1,1],[2,2],[3,3],[4,4]示例 2:输入:[1,1,1,2,2,2,3,3]输出:false解释:没有满足要求的分组。示例 3:输入:[1]输出原创 2021-01-27 21:56:50 · 288 阅读 · 0 评论 -
【力扣】905. 按奇偶排序数组--Python实现
【题目描述】给定一个非负整数数组 A,返回一个数组,在该数组中, A 的所有偶数元素之后跟着所有奇数元素。你可以返回满足此条件的任何数组作为答案。示例:输入:[3,1,2,4]输出:[2,4,3,1]输出 [4,2,3,1],[2,4,1,3] 和 [4,2,1,3] 也会被接受。提示:1 <= A.length <= 50000 <= A[i] <= 5000来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems原创 2021-01-27 21:41:43 · 315 阅读 · 0 评论 -
【力扣】746. 使用最小花费爬楼梯--Python实现
【题目描述】数组的每个下标作为一个阶梯,第 i 个阶梯对应着一个非负数的体力花费值 cost[i](下标从 0 开始)。每当你爬上一个阶梯你都要花费对应的体力值,一旦支付了相应的体力值,你就可以选择向上爬一个阶梯或者爬两个阶梯。请你找出达到楼层顶部的最低花费。在开始时,你可以选择从下标为 0 或 1 的元素作为初始阶梯。示例 1:输入:cost = [10, 15, 20]输出:15解释:最低花费是从 cost[1] 开始,然后走两步即可到阶梯顶,一共花费 15 。示例 2:输入:cost原创 2021-01-25 18:20:34 · 197 阅读 · 0 评论 -
【力扣】766. 托普利茨矩阵--Python实现
【题目描述】如果矩阵上每一条由左上到右下的对角线上的元素都相同,那么这个矩阵是 托普利茨矩阵 。给定一个 M x N 的矩阵,当且仅当它是托普利茨矩阵时返回 True。示例 1:输入:matrix = [[1,2,3,4],[5,1,2,3],[9,5,1,2]]输出: True解释:在上述矩阵中, 其对角线为:“[9]”, “[5, 5]”, “[1, 1, 1]”, “[2, 2, 2]”, “[3, 3]”, “[4]”。各条对角线上的所有元素均相同, 因此答案是True。原创 2021-01-25 18:04:51 · 234 阅读 · 0 评论 -
【力扣】896. 单调数列--Python实现
【题目描述】如果数组是单调递增或单调递减的,那么它是单调的。如果对于所有 i <= j,A[i] <= A[j],那么数组 A 是单调递增的。 如果对于所有 i <= j,A[i]> = A[j],那么数组 A 是单调递减的。当给定的数组 A 是单调数组时返回 true,否则返回 false。示例 1:输入:[1,2,2,3]输出:true示例 2:输入:[6,5,4,4]输出:true示例 3:输入:[1,3,2]输出:false示例 4:输入:[1,2原创 2021-01-25 17:32:01 · 301 阅读 · 0 评论 -
【力扣】867. 转置矩阵--Python实现
【题目描述】给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。示例 1:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]示例 2:输入:[[1,2,3],[4,5,6]]输出:[[1,4],[2,5],[3,6]]提示:1 <= A.length <= 10001 <= A[0].length <= 1000来源:力扣(LeetCode)链原创 2021-01-25 17:12:58 · 372 阅读 · 1 评论 -
【力扣】717. 公平的糖果交换--Python实现
【题目描述】爱丽丝和鲍勃有不同大小的糖果棒:A[i] 是爱丽丝拥有的第 i 块糖的大小,B[j] 是鲍勃拥有的第 j 块糖的大小。因为他们是朋友,所以他们想交换一个糖果棒,这样交换后,他们都有相同的糖果总量。(一个人拥有的糖果总量是他们拥有的糖果棒大小的总和。)返回一个整数数组 ans,其中 ans[0] 是爱丽丝必须交换的糖果棒的大小,ans[1] 是 Bob 必须交换的糖果棒的大小。如果有多个答案,你可以返回其中任何一个。保证答案存在。示例 1:输入:A = [1,1], B = [2,2]原创 2021-01-25 16:57:33 · 235 阅读 · 0 评论 -
【力扣】747. 至少是其他数字两倍的最大数--Python实现
【题目描述】在一个给定的数组nums中,总是存在一个最大元素 。查找数组中的最大元素是否至少是数组中每个其他数字的两倍。如果是,则返回最大元素的索引,否则返回-1。示例 1:输入: nums = [3, 6, 1, 0]输出: 1解释: 6是最大的整数, 对于数组中的其他整数,6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.示例 2:输入: nums = [1, 2, 3, 4]输出: -1解释: 4没有超过3的两倍大, 所以我们返回 -1.提示:nums 的长度范围在[原创 2021-01-25 12:48:32 · 208 阅读 · 0 评论 -
【力扣】717. 1比特与2比特字符--Python实现
【题目描述】有两种特殊字符。第一种字符可以用一比特0来表示。第二种字符可以用两比特(10 或 11)来表示。现给一个由若干比特组成的字符串。问最后一个字符是否必定为一个一比特字符。给定的字符串总是由0结束。示例 1:输入:bits = [1, 0, 0]输出: True解释:唯一的编码方式是一个两比特字符和一个一比特字符。所以最后一个字符是一比特字符。示例 2:输入:bits = [1, 1, 1, 0]输出: False解释:唯一的编码方式是两比特字符和两比特字符。所以最后一个原创 2021-01-20 17:11:21 · 192 阅读 · 0 评论 -
【力扣】724.寻找数组的中心索引--Python实现
【题目描述】给定一个整数类型的数组 nums,请编写一个能够返回数组 “中心索引” 的方法。我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个。示例 1:输入:nums = [1, 7, 3, 6, 5, 6]输出:3解释:索引 3 (nums[3] = 6) 的左侧数之和 (1 + 7 + 3 = 11),与右侧数之和 (5 + 6 = 1原创 2021-01-20 17:01:49 · 183 阅读 · 0 评论 -
【力扣】697.数组的度--Python实现
【题目描述】给定一个非空且只包含非负数的整数数组 nums, 数组的度的定义是指数组里任一元素出现频数的最大值。你的任务是找到与 nums 拥有相同大小的度的最短连续子数组,返回其长度。示例 1:输入: [1, 2, 2, 3, 1]输出: 2解释:输入数组的度是2,因为元素1和2的出现频数最大,均为2.连续子数组里面拥有相同度的有如下所示:[1, 2, 2, 3, 1], [1, 2, 2, 3], [2, 2, 3, 1], [1, 2, 2], [2, 2, 3], [2, 2]最原创 2021-01-20 13:34:24 · 378 阅读 · 1 评论 -
【力扣】674.最长连续递增序列--Python实现
【题目描述】给定一个未经排序的整数数组,找到最长且 连续递增的子序列,并返回该序列的长度。连续递增的子序列 可以由两个下标 l 和 r(l < r)确定,如果对于每个 l <= i < r,都有 nums[i] < nums[i + 1] ,那么子序列 [nums[l], nums[l + 1], …, nums[r - 1], nums[r]] 就是连续递增子序列。示例 1:输入:nums = [1,3,5,4,7]输出:3解释:最长连续递增序列是 [1,3,5], 长原创 2021-01-20 12:53:03 · 436 阅读 · 0 评论 -
【力扣】665.非递减数列--Python实现
【题目描述】给你一个长度为 n 的整数数组,请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的: 对于数组中所有的 i (0 <= i <= n-2),总满足 nums[i] <= nums[i + 1]。示例 1:输入: nums = [4,2,3]输出: true解释: 你可以通过把第一个4变成1来使得它成为一个非递减数列。示例 2:输入: nums = [4,2,1]输出: false解释: 你不能在只改变一个原创 2021-01-20 12:44:03 · 295 阅读 · 0 评论 -
【力扣】643.子数组最大平均数--Python实现
【题目描述】给定 n 个整数,找出平均数最大且长度为 k 的连续子数组,并输出该最大平均数。示例:输入:[1,12,-5,-6,50,3], k = 4输出:12.75解释:最大平均数 (12-5-6+50)/4 = 51/4 = 12.75提示:1 <= k <= n <= 30,000。所给数据范围 [-10,000,10,000]。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-average原创 2021-01-20 11:54:48 · 422 阅读 · 0 评论 -
【力扣】605.种花问题--Python实现
【题目描述】假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组 flowerbed 表示花坛,由若干 0 和 1 组成,其中 0 表示没种植花,1 表示种植了花。另有一个数 n ,能否在不打破种植规则的情况下种入 n 朵花?能则返回 true ,不能则返回 false。示例 1:输入:flowerbed = [1,0,0,0,1], n = 1输出:true示例 2:输入:flowerbed = [1,0,原创 2021-01-19 21:41:17 · 286 阅读 · 0 评论 -
【力扣】628.三个数的最大乘积--Python实现
【题目描述】给定一个整型数组,在数组中找出由三个数组成的最大乘积,并输出这个乘积。示例 1:输入: [1,2,3]输出: 6示例 2:输入: [1,2,3,4]输出: 24注意:给定的整型数组长度范围是[3,104],数组中所有的元素范围是[-1000, 1000]。输入的数组中任意三个数的乘积不会超出32位有符号整数的范围。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-product-of-three-num原创 2021-01-19 18:11:32 · 816 阅读 · 0 评论 -
【力扣】561.数组拆分I--Python实现
【题目描述】给定长度为 2n 的整数数组 nums ,你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), …, (an, bn) ,使得从 1 到 n 的 min(ai, bi) 总和最大。返回该 最大总和 。示例 1:输入:nums = [1,4,3,2]输出:4解释:所有可能的分法(忽略元素顺序)为:(1, 4), (2, 3) -> min(1, 4) + min(2, 3) = 1 + 2 = 3(1, 3), (2, 4) -> min(1原创 2021-01-19 17:55:37 · 376 阅读 · 0 评论 -
【力扣】485.最大连续1的个数--Python实现
【题目描述】给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含 0 和1。输入数组的长度是正整数,且不超过 10,000。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/max-consecutive-ones【解题思路】一次遍历即可,注意边界条件,最后循环完以后,需要用end-sta原创 2021-01-19 13:15:04 · 334 阅读 · 0 评论 -
【力扣】448.找到所有数组中消失的数字--Python实现
【题目描述】给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。找到所有在 [1, n] 范围之间没有出现在数组中的数字。您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。示例:输入:[4,3,2,7,8,2,3,1]输出:[5,6]来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/find-all-n原创 2021-01-19 13:08:14 · 311 阅读 · 0 评论 -
【力扣】414.第三大的数--Python实现
【题目描述】给你一个非空数组,返回此数组中 第三大的数 。如果不存在,则返回数组中最大的数。示例 1:输入:[3, 2, 1]输出:1解释:第三大的数是 1 。示例 2:输入:[1, 2]输出:2解释:第三大的数不存在, 所以返回最大的数 2 。示例 3:输入:[2, 2, 3, 1]输出:1解释:注意,要求返回第三大的数,是指第三大且唯一出现的数。存在两个值为2的数,它们都排第二。提示:1 <= nums.length <= 104-231 <= num原创 2021-01-19 12:37:40 · 221 阅读 · 0 评论 -
【力扣】228.汇总区间--Python实现
【题目描述】给定一个无重复元素的有序整数数组 nums 。返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于 nums 的数字 x 。列表中的每个区间范围 [a,b] 应该按如下格式输出:“a->b” ,如果 a != b“a” ,如果 a == b示例 1:输入:nums = [0,1,2,4,5,7]输出:[“0->2”,“4->5”,“7”]解释:区间范围是:[0,2]原创 2021-01-18 17:42:02 · 246 阅读 · 0 评论 -
【力扣】283.移动零--Python实现
【题目描述】给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/move-zeroes【解题思路】采用双指针,其中left指针指向已处理完的位置,right指针指向待处理的位置,则left指针左侧都是非0的数原创 2021-01-18 13:58:53 · 410 阅读 · 0 评论 -
【力扣】268.丢失的数字--Python实现
【题目描述】给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。进阶:你能否实现线性时间复杂度、仅使用额外常数空间的算法解决此问题?示例 1:输入:nums = [3,0,1]输出:2解释:n = 3,因为有 3 个数字,所以所有的数字都在范围 [0,3] 内。2 是丢失的数字,因为它没有出现在 nums 中。示例 2:输入:nums = [0,1]输出:2解释:n = 2,因为有 2 个数字,所以所有的数字都在范围 [0原创 2021-01-18 13:33:26 · 490 阅读 · 0 评论 -
【力扣】169.多数元素--Python实现
【题目描述】给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入:[3,2,3]输出:3示例 2:输入:[2,2,1,1,1,2,2]输出:2来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/majority-element【解题思路】众数出现的次数一定比其他元素出现的次数加起来都多。所以维护两个值,一个原创 2021-01-18 12:47:30 · 468 阅读 · 0 评论 -
【力扣】121.买卖股票的最佳时机 II--Python实现
【题目描述】给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股原创 2021-01-07 17:03:11 · 196 阅读 · 0 评论 -
【力扣】167.两数之和 II - 输入有序数组--Python实现
【题目描述】给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15], target = 9输出: [1,2]解释: 2 与 7 之和等于目标数 9 。因此 index1 =原创 2021-01-07 13:09:25 · 149 阅读 · 1 评论 -
【力扣】121.买卖股票的最佳时机--Python实现
【题目描述】给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。示例 2:原创 2021-01-07 12:54:00 · 266 阅读 · 0 评论