LeetCode
LearnToStick
just passing by!
展开
-
LeetCode 907
LeetCcode 907原创 2022-10-28 22:51:57 · 119 阅读 · 0 评论 -
LeetCode9
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文...原创 2018-08-13 14:17:17 · 201 阅读 · 0 评论 -
LeetCode11
给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(...原创 2018-08-14 18:37:06 · 356 阅读 · 0 评论 -
LeetCode14
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入: ["flower","flow","flight"]输出: "fl"示例 2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有输入原创 2018-09-01 13:12:24 · 330 阅读 · 0 评论 -
LeetCode15
15. 三数之和 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。例如, 给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]...原创 2018-09-01 13:30:27 · 101 阅读 · 0 评论 -
LeetCode219
219. 存在重复元素 II 给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的绝对值最大为 k。示例 1:输入: nums = [1,2,3,1], k = 3输出: true示例 2:输入: nums = [1,0,1,1], k = 1输出: true示例 3...原创 2018-09-01 13:56:33 · 217 阅读 · 0 评论 -
LeetCode16
16. 最接近的三数之和 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。例如,给定数组 nums = [-1,2,1,-4], 和 target = 1.与 target 最接近的三个数的和为 2. (-1 + 2 + 1 = 2)....原创 2018-09-01 14:15:13 · 397 阅读 · 0 评论 -
LeetCode17
17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf原创 2018-09-02 17:12:40 · 261 阅读 · 0 评论 -
LeetCode200
给定一个由 '1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。示例 1:输入:11110110101100000000输出: 1示例 2:输入:11000110000010000011输出: 3 并查集的问题,额,我也是开始学习...翻译 2018-09-11 15:46:34 · 337 阅读 · 0 评论 -
LeetCode120
给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。例如,给定三角形:[ [2], [3,4], [6,5,7], [4,1,8,3]]自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。说明:如果你可以只使用 O(n) 的额外空间(n 为三角形的总行数)来解决这个问题,那么你的算法会很加分。...翻译 2018-09-10 15:28:40 · 167 阅读 · 0 评论 -
LeetCode8
实现 atoi,将字符串转为整数。在找到第一个非空字符之前,需要移除掉字符串中的空格字符。如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值。如果第一个非空字符是数字,则直接将其与之后连续的数字字符组合起来,形成整数。字符串可以在形成整数的字符后面包括多余的字符,这些字符可以被忽略,它们对于函数没有影响。当字符串中的第一个非空字...原创 2018-08-13 14:11:13 · 488 阅读 · 0 评论 -
LeetCode7
给定一个 32 位有符号整数,将整数中的数字进行反转。示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。 这道题唯一注意的就是溢...原创 2018-08-13 11:47:35 · 141 阅读 · 0 评论 -
LeetCode3
给定一个字符串,找出不含有重复字符的最长子串的长度。示例:给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是3。给定 "bbbbb" ,最长的子串就是 "b" ,长度是1。给定 "pwwkew" ,最长子串是 "wke" ,长度是3。请注意答案必须是一个子串,"pwke" 是 子序列 而不是子串。 从第二个字符开原创 2018-08-13 11:32:35 · 212 阅读 · 0 评论 -
LeetCode13
罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。...原创 2018-08-14 19:43:33 · 184 阅读 · 0 评论 -
LeetCode63
class Solution {public: int uniquePathsWithObstacles(vector<vector<int>>& obstacleGrid) { int m=obstacleGrid.size(); int n=obstacleGrid[0].size(); //int (*a)[3]=new int a[2][3]; //int* a=new int[2][3];原创 2018-08-11 12:01:50 · 190 阅读 · 0 评论 -
LeetCode121
#include&amp;amp;amp;amp;lt;iostream&amp;amp;amp;amp;gt; #include&amp;amp;amp;amp;lt;vector&amp;amp;amp;amp;gt;using namespace std;class Solution {public: int maxProfit(vector&amp;amp;amp;amp;lt;int&原创 2018-08-11 15:25:58 · 358 阅读 · 0 评论 -
LeetCode445
给定两个非空链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。进阶:如果输入链表不能修改该如何处理?换句话说,你不能对列表中的节点进行翻转。示例:输入: (7 -> 2 -> 4 -> 3) + (5 -> 6 -> 4)...原创 2018-08-13 10:33:05 · 709 阅读 · 0 评论 -
LeetCode1
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]#include<iostream>#include<vector&...原创 2018-08-13 09:55:27 · 189 阅读 · 0 评论 -
LeetCode2
给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807 逆序表明不用对链表倒置,否则要...原创 2018-08-13 10:05:59 · 455 阅读 · 0 评论 -
LeetCode67
给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "1"输出: "100"示例 2:输入: a = "1010", b = "1011"输出: "10101"这个注意的就是从右往左计算,和1,2,445题比较类似。 解法1:#include<原创 2018-08-13 10:54:32 · 367 阅读 · 0 评论 -
LeetCode371
不使用运算符 + 和-,计算两整数a 、b之和。示例:若 a = 1 ,b = 2,返回 3。 诶,这个我看的别人的>.< 每相加一位要左移,所以用到<<运算符,这个也表示将一个数乘2,例如:1<<2=2,2<<2=4,3<<2=6;还有就是^(异或),这道题就是用这个做的,具体计算是二进制,我们只需要用十进制数...翻译 2018-08-13 11:04:08 · 327 阅读 · 0 评论 -
LeetCode415
给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。注意:num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num2 都不包含任何前导零。 你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形式。 这个我完全用67ti题的解法,只不过67题是2进制,这道题是10进制罢了,其他...原创 2018-08-13 11:10:03 · 217 阅读 · 0 评论 -
LeetCode12
罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1...翻译 2018-08-14 18:50:11 · 213 阅读 · 0 评论