![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
一天一大leet
前端-小书童
这个作者很懒,什么都没留下…
展开
-
【一天一大 lee】分发糖果 (难度:困难) - Day20201224
题目:老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。你需要按照以下要求,帮助老师给这些孩子分发糖果:每个孩子至少分配到 1 个糖果。相邻的孩子中,评分高的孩子必须获得更多的糖果。那么这样下来,老师至少需要准备多少颗糖果呢?示例:示例 1:输入: [1,0,2]输出: 5解释: 你可以分别给这三个孩子分发 2、1、2 颗糖果。示例 2:输入: [1,2,2]输出: 4解释: 你可以分别给这三个孩子分发 1.原创 2020-12-24 16:35:15 · 325 阅读 · 1 评论 -
【一天一大 lee】字符串中的第一个唯一字符 (难度:简单) - Day20201223
题目:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = "leetcode"返回 0s = "loveleetcode"返回 2提示:你可以假定该字符串只包含小写字母抛砖引玉遍历-哈希两次遍历:统计每个字符的数量返回第一次遇到的数量只有 1 的字符索引如果没有遇到数量为 1 的字符返回-1/** * @param {string} s * @return {number} */var firstUniqCha.原创 2020-12-23 09:56:51 · 229 阅读 · 0 评论 -
【一天一大 lee】二叉树的锯齿形层序遍历 (难度:中等) - Day20201222
题目:给定一个二叉树,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回锯齿形层序遍历如下:[ [3], [20,9], [15,7]]抛砖引玉关于二叉树的按层遍历之前已经做过类似的题目:二叉树的层序遍历二叉树的层次遍历 II广度优先搜索(BFS)按层遍历.原创 2020-12-22 18:05:16 · 137 阅读 · 0 评论 -
【一天一大 lee】使用最小花费爬楼梯 (难度:简单) - Day20201221
题目:数组的每个索引作为一个阶梯,第 i 个阶梯对应着一个非负数的体力花费值 cost[i] ,(索引从 0 开始)。每当你爬上一个阶梯你都要花费对应的体力花费值,然后你可以选择继续爬一个阶梯或者爬两个阶梯。您需要找到达到楼层顶部的最低花费。在开始时,你可以选择从索引为 0 或 1 的元素作为初始阶梯。示例:示例 1:输入: cost = [10, 15, 20]输出: 15解释: 最低花费是从cost[1]开始,然后走两步即可到阶梯顶,一共花费15。示例.原创 2020-12-22 18:01:48 · 87 阅读 · 0 评论 -
【一天一大 lee】去除重复字母 (难度:中等) - Day20201220
题目:给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证 返回结果的字典序最小(要求不能打乱其他字符的相对位置)。示例:示例 1:输入:s = "bcabc"输出:"abc"示例 2:输入:s = "cbacdcbc"输出:"acdb"提示:1 <= s.length <= 10410^4104s 由小写英文字母组成抛砖引玉栈 stack(先进先出s 中元素逐个入栈,如果遇到 Unicode 较小的元素,尽量将其放大栈.原创 2020-12-22 17:59:51 · 85 阅读 · 0 评论 -
【一天一大 lee】旋转图像 (难度:中等) - Day20201219
题目:给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例:示例 1:给定 matrix =[ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2], [9,6,3]]示例 2:给定 matrix =[ [ 5, 1, 9,11], [ 2, 4.原创 2020-12-22 17:55:33 · 88 阅读 · 0 评论 -
【一天一大 lee】找不同 (难度:简单) - Day20201218
题目:给定两个字符串 s 和 t,它们只包含小写字母。字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。请找出在 t 中被添加的字母。示例:示例 1:输入:s = "abcd", t = "abcde"输出:"e"解释:'e' 是那个被添加的字母。示例 2:输入:s = "", t = "y"输出:"y"示例 3:输入:s = "a", t = "aa"输出:"a"示例 4:输入:s = "ae", t = "aea"输出:"a"提.原创 2020-12-18 15:58:28 · 117 阅读 · 1 评论 -
【一天一大 lee】单词规律 II (难度:困难) - Day20201217
题目:给你一种规律 pattern 和一个字符串 str,请你判断 str 是否遵循其相同的规律。这里我们指的是 完全遵循,例如 pattern 里的每个字母和字符串 str 中每个 非空 单词之间,存在着 双射 的对应规律。双射 意味着映射双方一一对应,不会存在两个字符映射到同一个字符串,也不会存在一个字符分别映射到两个不同的字符串。示例:示例 1:输入:pattern = "abab", s .原创 2020-12-18 15:56:39 · 323 阅读 · 2 评论 -
【一天一大 lee】单词规律 (难度:简单) - Day20201216
题目:给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。示例:示例 1:输入: pattern = "abba", str = "dog cat cat dog"输出: true示例 2:输入:pattern =.原创 2020-12-18 15:53:05 · 118 阅读 · 2 评论 -
【一天一大 lee】单调递增的数字 (难度:中等) - Day20201215
题目:给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。(当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。)示例:示例 1:输入: N = 10输出: 9示例 2:输入: N = 1234输出: 1234示例 3:输入: N = 332输出: 299.原创 2020-12-15 15:23:27 · 97 阅读 · 0 评论 -
【一天一大 lee】字母异位词分组 (难度:中等) - Day20201214
题目:给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"]输出:[ ["ate","eat","tea"], ["nat","tan"], ["bat"]]说明:所有输入均为小写字母。不考虑答案输出的顺序。抛砖引玉声明一个辅助函数,将传入字符按照字符编码从小到大转换成新字符输出(字母异位词输出的字符都一致):转换成数组排序后重新转换.原创 2020-12-15 15:21:28 · 76 阅读 · 0 评论 -
【一天一大 lee】存在重复元素 (难度:简单) - Day20201213
题目:给定一个整数数组,判断是否存在重复元素。如果任意一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。示例:示例 1:输入: [1,2,3,1]输出: true示例 2:输入: [1,2,3,4]输出: false示例 3:输入: [1,1,1,3,3,4,3,2,4,2]输出: true抛砖引玉Hard 唯唯诺诺,Easy 就要重拳出击set 去重使用 set 去重比较长度是否改变/** * @pa.原创 2020-12-15 15:17:42 · 119 阅读 · 1 评论 -
【一天一大 lee】摆动序列 (难度:中等) - Day20201212
题目:如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列。第一个差(如果存在的话)可能是正数或负数。少于两个元素的序列也是摆动序列。例如, [1,7,4,9,2,5] 是一个摆动序列,因为差值 (6,-3,5,-7,3) 是正负交替出现的。相反, [1,4,7,2,5] 和 [1,7,4,5,5] 不是摆动序列,第一个序列是因为它的前两个差值都是正数,第二个序列是因为它的最后一个差值为零。给定一个整数序列,返回作为摆动序列的最长子序列.原创 2020-12-15 15:15:10 · 114 阅读 · 1 评论 -
【leetcode】第 219 场周赛-20201213
1.比赛中的配对次数(简单)题目:给你一个整数 n ,表示比赛中的队伍数。比赛遵循一种独特的赛制:如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对。总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮。如果当前队伍数为 奇数 ,那么将会随机轮空并晋级一支队伍,其余的队伍配对。总共进行 (n - 1) / 2 场比赛,且产生 (n - 1) / 2 + 1 支队伍进入下一轮。返回在比赛中进行的配对次数,直到决出获胜队伍为止。示例:示例 1:输入:n = 7输出:.原创 2020-12-15 15:08:20 · 176 阅读 · 0 评论 -
【一天一大 lee】Dota2 参议院 (难度:中等) - Day20201211
题目:Dota2 的世界里有两个阵营:Radiant(天辉)和 Dire(夜魇)Dota2 参议院由来自两派的参议员组成。现在参议院希望对一个 Dota2 游戏里的改变作出决定。他们以一个基于轮为过程的投票进行。在每一轮中,每一位参议员都可以行使两项权利中的一项:禁止一名参议员的权利:参议员可以让另一位参议员在这一轮和随后的几轮中丧失所有的权利。宣布胜利:如果参议员发现有权利投票的参议员都是同一个阵营的,他可以宣布胜利并决定在游戏中的有关变化。给定一个字符串代表每个参议员的阵营。.原创 2020-12-11 11:46:56 · 154 阅读 · 0 评论 -
【一天一大 lee】柠檬水找零 (难度:简单) - Day20201210
题目:在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。示例:示例 1:输入:[5,5,5,10,20]输出:true解.原创 2020-12-10 10:00:23 · 95 阅读 · 0 评论 -
【一天一大 lee】不同路径 (难度:中等) - Day20201209
题目:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?例如,上图是一个 7 x 3 的网格。有多少可能的路径?示例:示例 1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向右 -> 向下2. 向右 -> 向下 -> 向右.原创 2020-12-09 10:22:49 · 76 阅读 · 0 评论 -
【一天一大 lee】将数组拆分成斐波那契序列 (难度:中等) - Day20201208
题目:给定一个数字字符串 S,比如 S = “123456579”,我们可以将它分成斐波那契式的序列 [123, 456, 579]。形式上,斐波那契式序列是一个非负整数列表 F,且满足:0 <= F[i] <= 2312^31231 - 1,(也就是说,每个整数都符合 32 位有符号整数类型);F.length >= 3;对于所有的 0 <= i < F.length - 2,都有 F[i] + F[i+1] = F[i+2] 成立。另外,请注意,将字符串拆.原创 2020-12-08 11:53:50 · 145 阅读 · 0 评论 -
【一天一大 lee】翻转矩阵后的得分 (难度:中等) - Day20201207
题目:有一个二维矩阵 A 其中每个元素的值为 0 或 1 。移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 0 都更改为 1,将所有 1 都更改为 0。在做出任意次数的移动后,将该矩阵的每一行都按照二进制数来解释,矩阵的得分就是这些数字的总和。返回尽可能高的分数。示例:输入:[[0,0,1,1],[1,0,1,0],[1,1,0,0]]输出:39解释:转换为 [[1,1,1,1],[1,0,0,1],[1,1,1,1].原创 2020-12-07 21:32:39 · 104 阅读 · 0 评论 -
【一天一大 lee】杨辉三角 (难度:简单) - Day20201206
题目:给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]抛砖引玉思路:模拟两遍循环/** * @param {number} numRows * @return {number[][]} */var generate = function(numRows) {.原创 2020-12-07 21:30:39 · 97 阅读 · 0 评论 -
【一天一大 lee】任务调度器 (难度:中等) - Day20201205
题目:给你一个用字符数组 tasks 表示的 CPU 需要执行的任务列表。其中每个字母表示一种不同种类的任务。任务可以以任意顺序执行,并且每个任务都可以在 1 个单位时间内执行完。在任何一个单位时间,CPU 可以完成一个任务,或者处于待命状态。然而,两个 相同种类 的任务之间必须有长度为整数 n 的冷却时间,因此至少有连续 n 个单位时间内 CPU 在执行不同的任务,或者在待命状态。你需要计算完成所有任务所需要的 最短时间 。示例:示例 1:输入:tasks = ["A","A","A".原创 2020-12-07 21:28:05 · 11895 阅读 · 0 评论 -
【一天一大 lee】分割数组为连续子序列 (难度:中等) - Day20201204
题目:给你一个按升序排序的整数数组 num(可能包含重复数字),请你将它们分割成一个或多个子序列,其中每个子序列都由连续整数组成且长度至少为 3 。如果可以完成上述分割,则返回 true ;否则,返回 false 。示例:示例 1:输入: [1,2,3,3,4,5]输出: True解释:你可以分割出这样两个连续子序列 :1, 2, 33, 4, 5示例 2:输入: [1,2,3,3,4,4,5,5]输出: True解释:你可以分割出这样两个连续子序列 :1, 2,.原创 2020-12-07 21:25:15 · 125 阅读 · 0 评论 -
【一天一大 lee】计数质数 (难度:简单) - Day20201203
题目:统计所有小于非负整数 n 的质数的数量。示例:示例 1:输入:n = 10输出:4解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。示例 2:输入:n = 0输出:0示例 3:输入:n = 1输出:0提示:0 <= n <= 5 * 10610^6106抛砖引玉思路:遍历从 2 到 n,逐个判断是否为质数质数又称素数,指在大于 1 的自然数中,除了 1 和该数自身外,无法被其他自然数整除的数(也可定义为只有.原创 2020-12-03 11:43:41 · 140 阅读 · 0 评论 -
【一天一大 lee】拼接最大数 (难度:困难) - Day20201202
题目:给定长度分别为 m 和 n 的两个数组,其元素由 0-9 构成,表示两个自然数各位上的数字。现在从这两个数组中选出 k (k <= m + n) 个数字拼接成一个新的数,要求从同一个数组中取出的数字保持其在原数组中的相对顺序。求满足该条件的最大数。结果返回一个表示该最大数的长度为 k 的数组。说明: 请尽可能地优化你算法的时间和空间复杂度。示例:示例 1:输入:nums1 = [3, 4, 6, 5]nums2 = [9, 1, 2, 5, 8, 3]k.原创 2020-12-02 15:17:50 · 140 阅读 · 0 评论 -
【一天一大 lee】在排序数组中查找元素的第一个和最后一个位置 (难度:中等) - Day20201201
题目:给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。进阶:分你可以设计并实现时间复杂度为 O(log n) 的算法解决此问题吗?示例:示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例 2:输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1.原创 2020-12-01 09:28:05 · 99 阅读 · 0 评论 -
【一天一大 lee】重构字符串 (难度:中等) - Day20201130
题目:给定一个字符串 S,检查是否能重新排布其中的字母,使得两相邻的字符不同。若可行,输出任意可行的结果。若不可行,返回空字符串。示例:示例 1入: S = "aab"输出: "aba"示例 2输入: S = "aaab"输出: ""注意:S 只包含小写字母并且长度在[1, 500]区间内。抛砖引玉将所有字符规制到哈希表中,且记录每个字符出现的次数,然后当字符单个字符的间隔填充。注意当重复次数最多的字符,重复数量大于长度的一边则不能满足相同元素不相邻的要求。.原创 2020-11-30 22:30:34 · 86 阅读 · 0 评论 -
【一天一大 lee】三角形的最大周长 (难度:简单) - Day20201129
题目:给定由一些正数(代表长度)组成的数组 A,返回由其中三个长度组成的、面积不为零的三角形的最大周长。如果不能形成任何面积不为零的三角形,返回 0。示例:示例 1:输入:[2,1,2]输出:5示例 2:输入:[1,2,1]输出:0示例 3:输入:[3,2,3,4]输出:10示例 4:输入:[3,6,2,3]输出:8提示:3 <= A.length <= 100001 <= A[i] <= 10610^6106抛砖引.原创 2020-11-30 22:26:46 · 95 阅读 · 0 评论 -
【一天一大 lee】翻转对 (难度:困难) - Day20201128
题目:给定一个数组 nums ,如果 i < j 且 nums[i] > 2*nums[j] 我们就将 (i, j) 称作一个重要翻转对。你需要返回给定数组中的重要翻转对的数量。示例:示例 1:输入: [1,3,2,3,1]输出: 2示例 2:输入: [2,4,3,5,1]输出: 3注意:给定数组的长度不会超过 50000。输入数组中的所有数字都在 32 位整数的表示范围内。抛砖引玉数组中取两个数(索引:i、j),如果满足 i>j.原创 2020-11-30 22:22:54 · 101 阅读 · 0 评论 -
【一天一大 lee】四数相加 II (难度:中等) - Day20201127
题目:给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] + B[j] + C[k] + D[l] = 0。为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 −228-2^28−228 到 2282^28228 - 1 之间,最终结果不会超过 2312^31231 - 1 。示例:输入:A = [ 1, 2.原创 2020-11-27 13:45:45 · 158 阅读 · 0 评论 -
【一天一大 lee】最大间距 (难度:困难) - Day20201126
题目:给定一个无序的数组,找出数组在排序之后,相邻元素之间最大的差值。如果数组元素个数小于 2,则返回 0。示例:示例 1:输入: [3,6,9,1]输出: 3解释: 排序后的数组是 [1,3,6,9], 其中相邻元素 (3,6) 和 (6,9) 之间都存在最大差值 3。示例 2:输入: [10]输出: 0解释: 数组元素个数小于 2,因此返回 0。说明:你可以假设数组中所有元素都是非负整数,且数值在 32 位有符号整数范围内。请尝试在线性时间复杂度和空间复杂度的.原创 2020-11-27 13:40:57 · 90 阅读 · 0 评论 -
【一天一大 lee】上升下降字符串 (难度:简单) - Day20201125
题目:给你一个字符串 s,请你根据下面的算法重新构造字符串:从 s 中选出最小的字符,将它接在结果字符串的后面。从 s 剩余字符中选出最小的字符,且该字符比上一个添加的字符大,将它接在结果字符串后面。重复步骤 2 ,直到你没法从 s 中选择字符。从 s 中选出最大的字符,将它接在结果字符串的后面。从 s 剩余字符中选出最大 的字符,且该字符比上一个添加的字符小,将它接在结果字符串后面。重复步骤 5 ,直到你没法从 s 中选择字符。重复步骤 1 到 6 ,直到 s 中所有字符都已经.原创 2020-11-25 11:54:11 · 108 阅读 · 0 评论 -
【一天一大 lee】完全二叉树的节点个数 (难度:中等) - Day20201124
题目:给出一个完全二叉树,求出该树的节点个数。说明:完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h2^h2h 个节点。示例:输入: 1 / \ 2 3 / \ /4 5 6输出: 6抛砖引玉在本题中按部就班的遍历二叉树是一定可以统计出所有二叉树节点的。广度优先遍历:/** * Def.原创 2020-11-24 11:58:28 · 95 阅读 · 0 评论 -
【一天一大 lee】最少数量的箭引爆气球 (难度:中等) - Day20201123
题目:在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限地前进。我们想找.原创 2020-11-23 10:41:06 · 100 阅读 · 0 评论 -
【一天一大 lee】有效的字母异位词 (难度:简单) - Day20201122
题目:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例:示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输出: false说明:你可以假设字符串只包含小写字母。进阶:如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?抛砖引玉简化下题目的意思:判断两个字符串字符和字符数是否都一致。使用哈希记录出现的字.原创 2020-11-22 20:08:43 · 137 阅读 · 1 评论 -
【一天一大 lee】排序链表 (难度:中等) - Day20201121
题目:给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。进阶:你可以在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗?示例:示例 1:输入:head = [4,2,1,3]输出:[1,2,3,4]示例 2:输入:head = [-1,5,3,4,0]输出:[-1,0,3,4,5]示例 3:输入:head = []输出:[]提示:链表中节点的数目在范围 [0, 5∗1045 * 10^45∗104] 内.原创 2020-11-22 20:05:06 · 128 阅读 · 0 评论 -
【一天一大 lee】对链表进行插入排序 (难度:中等) - Day20201120
题目:插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。插入排序算法:插入排序是迭代的,每次只移动一个元素,直到所有元素可以形成一个有序的输出列表。每次迭代中,插入排序只从输入数据中移除一个待排序的元素,找到它在序列中适当的位置,并将其插入。重复直到所有输入数据插入完为止。示例:示例 1:输入: 4->2->1->3输出: 1->2-&.原创 2020-11-20 12:33:47 · 109 阅读 · 0 评论 -
【一天一大 lee】移动零 (难度:简单) - Day20201119
题目:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。抛砖引玉题目只限制了在原数组上操作,但是没有限制修改数组长度。那么最简单的方法就是遇到 0 就将其从数组中删掉然后再在数组末尾追加一个 0,就实现了题目的要求[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g5MfWj.原创 2020-11-19 10:26:44 · 81 阅读 · 1 评论 -
【一天一大 lee】加油站 (难度:中等) - Day20201118
题目:在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。说明:如果题目有解,该答案即为唯一答案。输入数组均为非空数组,且长度相同。输入数组中的元.原创 2020-11-18 12:01:57 · 78 阅读 · 0 评论 -
【一天一大 lee】距离顺序排列矩阵单元格 (难度:简单) - Day20201117
题目:给出 R 行 C 列的矩阵,其中的单元格的整数坐标为 (r, c),满足 0 <= r < R 且 0 <= c < C。另外,我们在该矩阵中给出了一个坐标为 (r0, c0) 的单元格。返回矩阵中的所有单元格的坐标,并按到 (r0, c0) 的距离从最小到最大的顺序排,其中,两单元格(r1, c1) 和 (r2, c2) 之间的距离是曼哈顿距离,|r1 - r2| + |c1 - c2|。(你可以按任何满足此条件的顺序返回答案。)示例示例 1输入.原创 2020-11-17 14:19:16 · 108 阅读 · 0 评论 -
【一天一大 lee】根据身高重建队列 (难度:中等) - Day20201116
题目:假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。注意:总人数少于1100人。示例输入:[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]输出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]抛砖引玉先将队伍从高到低排列,然后再更新people[i][1]逐个插队。从高到低排列时如果两.原创 2020-11-16 13:17:42 · 90 阅读 · 0 评论