leetcode
tmhhh
这个作者很懒,什么都没留下…
展开
-
C++ STL标准容器插入删除算法的复杂度
原文:C++ STL标准容器插入删除算法的复杂度(来源flyhorse)1 vector内部实现: 数组 // 就是没有固定大小的数组,vector直接翻译是向量的意思支持操作:begin(), //取首个元素,返回一个iteratorend(), //取末尾(最后一个元素的下一个存储空间的地址)size(), //就是数组大小的意思clear(), //清空empty(), //...转载 2020-04-21 15:40:29 · 644 阅读 · 0 评论 -
leetcode-链表十题
总结自:https://www.bilibili.com/video/BV1jt411J7tC19. Remove Nth Node From End of ListGiven linked list: 1->2->3->4->5, and n = 2.After removing the second node from the end, the linked l...原创 2020-04-02 15:39:30 · 168 阅读 · 0 评论 -
1200. 最小绝对差
链接:https://leetcode-cn.com/problems/minimum-absolute-difference/给你个整数数组arr,其中每个元素都 不相同。请你找到所有具有最小绝对差的元素对,并且按升序的顺序返回。示例 1:输入:arr = [4,2,1,3]输出:[[1,2],[2,3],[3,4]]示例 2:输入:arr = [1,3,6,10...原创 2020-02-08 21:23:23 · 211 阅读 · 0 评论 -
119. 杨辉三角 II
链接:https://leetcode-cn.com/problems/pascals-triangle-ii/定一个非负索引k,其中 k≤33,返回杨辉三角的第 k 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 3输出: [1,3,3,1]进阶:你可以优化你的算法到 O(k) 空间复杂度吗?用一个一维向量记录,因为更新一个位置的值要用到前一个...原创 2020-02-08 19:45:30 · 91 阅读 · 0 评论 -
118. 杨辉三角(二维向量)
链接:https://leetcode-cn.com/problems/pascals-triangle/给定一个非负整数numRows,生成杨辉三角的前numRows行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1],[1,4,6,4,1]]熟悉...原创 2020-02-08 17:27:26 · 140 阅读 · 0 评论 -
1299. 将每个元素替换为右侧最大元素
https://leetcode-cn.com/problems/replace-elements-with-greatest-element-on-right-side/给你一个数组arr,请你将每个元素用它右边最大的元素替换,如果是最后一个元素,用-1 替换。完成所有替换操作后,请你返回这个数组。示例:输入:arr = [17,18,5,4,6,1]输出:[18,...原创 2020-02-07 21:42:23 · 237 阅读 · 0 评论 -
832. 翻转图像 (二维向量)
链接:https://leetcode-cn.com/problems/flipping-an-image/给定一个二进制矩阵A,我们想先水平翻转图像,然后反转图像并返回结果。水平翻转图片就是将图片的每一行都进行翻转,即逆序。例如,水平翻转[1, 1, 0]的结果是[0, 1, 1]。反转图片的意思是图片中的0全部被1替换,1全部被0替换。例如,反转[0, 1...原创 2020-02-07 20:52:25 · 188 阅读 · 0 评论 -
1295. 统计位数为偶数的数字
链接:https://leetcode-cn.com/problems/find-numbers-with-even-number-of-digits/给你一个整数数组nums,请你返回其中位数为偶数的数字的个数。示例 1:输入:nums = [12,345,2,6,7896]输出:2解释:12 是 2 位数字(位数为偶数)345 是 3 位数字(位数为奇数)...原创 2020-02-07 16:33:46 · 250 阅读 · 0 评论 -
1029. 两地调度
链接:https://leetcode-cn.com/problems/two-city-scheduling/公司计划面试 2N 人。第 i 人飞往 A 市的费用为 costs[i][0],飞往 B 市的费用为 costs[i][1]。返回将每个人都飞到某座城市的最低费用,要求每个城市都有 N 人抵达。示例:输入:[[10,20],[30,200],[400,50],[30...原创 2020-02-01 23:20:44 · 177 阅读 · 0 评论 -
1046. 最后一块石头的重量
链接:https://leetcode-cn.com/problems/last-stone-weight/有一堆石头,每块石头的重量都是正整数。每一回合,从中选出两块最重的石头,然后将它们一起粉碎。假设石头的重量分别为x 和y,且x <= y。那么粉碎的可能结果如下:如果x == y,那么两块石头都会被完全粉碎;如果x != y,那么重量为x的石头将会完全粉碎,...原创 2020-02-01 22:41:50 · 155 阅读 · 0 评论 -
53. 最大子序和
链接:https://leetcode-cn.com/problems/maximum-subarray/给定一个整数数组 nums,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。进阶:如果你已经实现复杂度为 O(n)...原创 2020-01-28 21:43:42 · 1124 阅读 · 0 评论 -
155. 最小栈
链接:https://leetcode-cn.com/problems/min-stack/设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。push(x)-- 将元素 x 推入栈中。pop()-- 删除栈顶的元素。top()-- 获取栈顶元素。getMin() -- 检索栈中的最小元素。示例:MinStack minStack = new...原创 2020-01-28 14:45:32 · 97 阅读 · 0 评论 -
225. 用队列实现栈
链接:https://leetcode-cn.com/problems/implement-stack-using-queues/使用队列实现栈的下列操作:push(x) -- 元素 x 入栈pop() -- 移除栈顶元素top() -- 获取栈顶元素empty() -- 返回栈是否为空注意:你只能使用队列的基本操作-- 也就是push to back, peek/pop f...原创 2020-01-28 13:51:24 · 85 阅读 · 0 评论 -
232. 用栈实现队列
链接:https://leetcode-cn.com/problems/implement-queue-using-stacks/使用栈实现队列的下列操作:push(x) -- 将一个元素放入队列的尾部。pop() -- 从队列首部移除元素。peek() -- 返回队列首部的元素。empty() -- 返回队列是否为空。示例:MyQueue queue = new MyQueu...原创 2020-01-27 22:48:26 · 151 阅读 · 0 评论 -
1047. 删除字符串中的所有相邻重复项
链接:https://leetcode-cn.com/problems/remove-all-adjacent-duplicates-in-string/给出由小写字母组成的字符串S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:"abbac...原创 2020-01-27 22:19:08 · 331 阅读 · 0 评论 -
342. 4的幂
链接:https://leetcode-cn.com/problems/power-of-four/给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4的幂次方。示例 1:输入: 16输出: true示例 2:输入: 5输出: false进阶:你能不使用循环或者递归来完成本题吗?首先用判断是否为2的幂的方法来保证该数的二进制中只有一个1,然后观察到...原创 2020-01-24 15:51:23 · 144 阅读 · 0 评论 -
231. 2的幂
链接:https://leetcode-cn.com/problems/power-of-two/给定一个整数,编写一个函数来判断它是否是 2 的幂次方。示例1:输入: 1输出: true解释: 20= 1示例 2:输入: 16输出: true解释: 24= 16示例 3:输入: 218输出: false第一种,在二进制中2的幂只有一个1,因此统计二进制...原创 2020-01-22 21:42:59 · 83 阅读 · 0 评论 -
268. 缺失数字
链接:https://leetcode-cn.com/problems/missing-number/给定一个包含 0, 1, 2, ..., n中n个数的序列,找出 0 .. n中没有出现在序列中的那个数。示例 1:输入: [3,0,1]输出: 2示例2:输入: [9,6,4,2,3,5,7,0,1]输出: 8说明:你的算法应具有线性时间复杂度。你能否仅使用额...原创 2020-01-22 15:20:30 · 123 阅读 · 0 评论 -
169. 多数元素
链接:https://leetcode-cn.com/problems/majority-element/给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数大于⌊ n/2 ⌋的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例1:输入: [3,2,3]输出: 3示例2:输入: [2,2,1,1,1,2,2]输出: 2与...原创 2020-01-19 20:39:02 · 160 阅读 · 0 评论 -
693. 交替位二进制数
链接:https://leetcode-cn.com/problems/binary-number-with-alternating-bits/给定一个正整数,检查他是否为交替位二进制数:换句话说,就是他的二进制数相邻的两个位数永不相等。示例 1:输入: 5输出: True解释:5的二进制数是: 101示例 2:输入: 7输出: False解释:7的二进制数是: 11...原创 2020-01-19 19:59:53 · 154 阅读 · 0 评论 -
509. 斐波那契数
链接:https://leetcode-cn.com/problems/fibonacci-number/斐波那契数,通常用F(n) 表示,形成的序列称为斐波那契数列。该数列由0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0,F(1)= 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.给定N,计算F(N)...原创 2020-01-18 21:47:54 · 155 阅读 · 0 评论 -
589. N叉树的前序遍历
链接:https://leetcode-cn.com/problems/n-ary-tree-preorder-traversal/给定一个 N 叉树,返回其节点值的前序遍历。例如,给定一个3叉树:返回其前序遍历: [1,3,5,6,2,4]。说明:递归法很简单,你可以使用迭代法完成此题吗?对于树的每一层通过倒序存进栈的方式来使得每一层最左边的节点最先出...原创 2020-01-18 17:02:51 · 127 阅读 · 0 评论 -
1021. 删除最外层的括号
链接:https://leetcode-cn.com/problems/remove-outermost-parentheses/有效括号字符串为空("")、"(" + A + ")"或A + B,其中A 和B都是有效的括号字符串,+代表字符串的连接。例如,"","()","(())()"和"(()(()))"都是有效的括号字符串。如果有效字符串S非空,且不存在将其...原创 2020-01-16 16:41:56 · 135 阅读 · 0 评论 -
1078. Bigram 分词
链接:https://leetcode-cn.com/problems/occurrences-after-bigram/给出第一个词first 和第二个词second,考虑在某些文本text中可能以 "first second third" 形式出现的情况,其中second紧随first出现,third紧随second出现。对于每种这样的情况,将第三个词 "thir...原创 2020-01-16 14:20:48 · 314 阅读 · 0 评论 -
112. 路径总和
链接:https://leetcode-cn.com/problems/path-sum/给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。说明:叶子节点是指没有子节点的节点。示例:给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 ...原创 2020-01-15 22:29:09 · 139 阅读 · 0 评论 -
821. 字符的最短距离
链接:https://leetcode-cn.com/problems/shortest-distance-to-a-character/给定一个字符串S和一个字符C。返回一个代表字符串S中每个字符到字符串S中的字符C的最短距离的数组。示例 1:输入: S = "loveleetcode", C = 'e'输出: [3, 2, 1, 0, 1, 0, 0, 1, 2...原创 2020-01-15 21:33:17 · 112 阅读 · 0 评论 -
1217. 玩筹码
链接:https://leetcode-cn.com/problems/play-with-chips/数轴上放置了一些筹码,每个筹码的位置存在数组chips当中。你可以对 任何筹码 执行下面两种操作之一(不限操作次数,0 次也可以):将第 i 个筹码向左或者右移动 2 个单位,代价为 0。将第 i 个筹码向左或者右移动 1 个单位,代价为 1。最开始的时候,同一位置上也可能放...原创 2020-01-15 20:23:44 · 185 阅读 · 0 评论 -
258. 各位相加
链接:https://leetcode-cn.com/problems/add-digits/给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。示例:输入: 38输出: 2解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于2 是一位数,所以返回 2。进阶:你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?...原创 2020-01-14 22:23:55 · 167 阅读 · 0 评论 -
200. 岛屿数量
链接:https://leetcode-cn.com/problems/number-of-islands/给定一个由'1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。示例 1:输入:11110110101100000000输出:1示例2:输入:...原创 2020-01-12 13:27:03 · 127 阅读 · 0 评论 -
733. 图像渲染
链接:https://leetcode-cn.com/problems/flood-fill/有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标(sr, sc)表示图像渲染开始的像素值(行 ,列)和一个新的颜色值newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像...原创 2020-01-11 23:08:02 · 139 阅读 · 0 评论 -
1189. “气球” 的最大数量
给你一个字符串text,你需要使用 text 中的字母来拼凑尽可能多的单词"balloon"(气球)。字符串text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词"balloon"。示例 1:输入:text = "nlaebolko"输出:1示例 2:输入:text = "loonbalxballpoon"输出:2示例 3:输入:tex...原创 2020-01-09 14:29:55 · 126 阅读 · 0 评论 -
1189. “气球” 的最大数量
链接:https://leetcode-cn.com/problems/maximum-number-of-balloons/给你一个字符串text,你需要使用 text 中的字母来拼凑尽可能多的单词"balloon"(气球)。字符串text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词"balloon"。示例 1:输入:text = "nlaeb...原创 2020-01-09 14:27:47 · 181 阅读 · 0 评论 -
191. 位1的个数
链接:https://leetcode-cn.com/problems/number-of-1-bits/编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’的个数(也被称为汉明重量)。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001...原创 2020-01-09 13:47:37 · 94 阅读 · 0 评论 -
136. 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 41.排序class Solution {public: int singleNumber(...原创 2020-01-08 18:16:42 · 77 阅读 · 0 评论 -
682. 棒球比赛
链接:https://leetcode-cn.com/problems/baseball-game/你现在是棒球比赛记录员。给定一个字符串列表,每个字符串可以是以下四种类型之一:1.整数(一轮的得分):直接表示您在本轮中获得的积分数。2. "+"(一轮的得分):表示本轮获得的得分是前两轮有效回合得分的总和。3. "D"(一轮的得分):表示本轮获得的得分是前一轮有效回合得分的两倍。...原创 2020-01-08 16:53:14 · 83 阅读 · 0 评论 -
961. 重复 N 次的元素
链接:https://leetcode-cn.com/problems/n-repeated-element-in-size-2n-array/solution/zhong-fu-n-ci-de-yuan-su-by-leetcode/在大小为 2N的数组 A中有 N+1 个不同的元素,其中有一个元素重复了 N 次。返回重复了 N次的那个元素。示例 1:输入:[1,2,...原创 2020-01-07 23:50:15 · 95 阅读 · 0 评论 -
476. 数字的补数
链接:https://leetcode-cn.com/problems/number-complement/solution/yi-huo-by-im-me/给定一个正整数,输出它的补数。补数是对该数的二进制表示取反。注意:给定的整数保证在32位带符号整数的范围内。你可以假定二进制数不包含前导零位。示例 1:输入: 5输出: 2解释: 5的二进制表示为101(没有前导零位)...原创 2019-12-19 21:53:09 · 135 阅读 · 0 评论 -
557. 反转字符串中的单词 III
链接:https://leetcode-cn.com/problems/reverse-words-in-a-string-iii/给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例1:输入: "Let's take LeetCode contest"输出: "s'teL ekat edoCteeL tsetnoc"注意:在字符串中,每个...原创 2019-12-17 15:35:30 · 73 阅读 · 0 评论 -
942. 增减字符串匹配
链接:https://leetcode-cn.com/problems/di-string-match/submissions/给定只含"I"(增大)或 "D"(减小)的字符串S,令N = S.length。返回[0, 1, ..., N]的任意排列A使得对于所有i = 0,..., N-1,都有:如果S[i] == "I",那么A[i] < A[i+1]...原创 2019-12-16 20:47:42 · 77 阅读 · 0 评论 -
977. 有序数组的平方
链接:https://leetcode-cn.com/problems/squares-of-a-sorted-array/solution/you-xu-shu-zu-de-ping-fang-by-leetcode/给定一个按非递减顺序排序的整数数组 A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例 1:输入:[-4,-1,0,3,10]输出:[0,1,9,...原创 2019-12-16 19:42:45 · 139 阅读 · 0 评论