LeetCode
LCoin777
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LeetCode - 罗马数字转整型
一. 题目描述罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即...原创 2018-07-26 08:55:37 · 357 阅读 · 0 评论 -
leetcode--874. 模拟行走机器人
一. 题目描述机器人在一个无限大小的网格上行走,从点 (0, 0) 处开始出发,面向北方。该机器人可以接收以下三种类型的命令:-2:向左转 90 度 -1:向右转 90 度 1 <= x <= 9:向前移动 x 个单位长度在网格上有一些格子被视为障碍物。第 i 个障碍物位于网格点 (obstacles[i][0], obstacles[i][1])如果机器人试图...原创 2019-02-15 14:31:29 · 403 阅读 · 0 评论 -
LeetCode -- 数组中的第K个最大元素
一. 题目描述在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例 2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4说明:你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。二...原创 2019-02-21 13:28:34 · 389 阅读 · 0 评论 -
LeetCode - 盛最多水的容器 - 对撞指针
一. 题目描述给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器,且 n 的值至少为 2。图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下...原创 2019-02-25 13:40:11 · 257 阅读 · 0 评论 -
leetcode--柠檬水找零
一. 题目描述在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。示...原创 2019-02-14 14:14:34 · 478 阅读 · 0 评论 -
leetcode--删除排序数组中的重复项 II
贪心算法的简单题就先这样略过吧,简单题太简单,以至于很难看出贪心的成分。从今天开始,开始刷《数组类算法》这个专题。由于这个专题的一些题目以前已经做过了, 所以很多题就不重复做了,第一道题就是比较难的了,啊哈。一. 题目描述给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 ...原创 2019-02-20 16:00:08 · 168 阅读 · 0 评论 -
Leetcode - 四数相加 II
一. 题目描述给定四个包含整数的数组列表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到 228- 1 之间,最终结果不会超过231- 1 。例如:输入...原创 2019-03-06 14:26:37 · 226 阅读 · 0 评论 -
LeetCode - 相交链表
一. 题目描述编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:节点 c1 开始相交。示例 1:输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3输出:Reference of the node with value = 8输入...原创 2019-03-27 14:25:08 · 204 阅读 · 0 评论 -
LeetCode - 扁平化多级双向链表
一. 题目描述您将获得一个双向链表,除了下一个和前一个指针之外,它还有一个子指针,可能指向单独的双向链表。这些子列表可能有一个或多个自己的子项,依此类推,生成多级数据结构,如下面的示例所示。扁平化列表,使所有结点出现在单级双链表中。您将获得列表第一级的头部。示例:输入: 1---2---3---4---5---6--NULL | 7--...原创 2019-04-08 14:14:46 · 812 阅读 · 2 评论 -
LeetCode - 加一
一. 题目给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示...原创 2019-05-27 14:03:45 · 210 阅读 · 0 评论 -
LeetCode - 对角线遍历
一. 题目给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。示例:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,4,7,5,3,6,8,9]解释:说明:给定矩阵中的元素总数不会超过 100000 。二. 解题方...原创 2019-05-29 14:20:12 · 564 阅读 · 0 评论 -
LeetCode - 字符串解码
一. 题目描述给定一个经过编码的字符串,返回它解码后的字符串。编码规则为:k[encoded_string],表示其中方括号内部的encoded_string正好重复k次。注意k保证为正整数。你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。此外,你可以认为原始数据不包含数字,所有的数字只表示重复的次数k,例如不会出现像...原创 2019-07-01 14:37:11 · 1516 阅读 · 0 评论 -
LeetCode - 292. Nim游戏
一. 题目描述你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。示例:输入: 4输出: false 解释: 如果堆中有 4 块石头,那么你永远不会赢得比赛; 因为无论你拿走 1 ...原创 2018-10-10 17:56:09 · 233 阅读 · 0 评论 -
LeetCode - 258. 各位相加
一. 题目描述给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。示例:输入: 38输出: 2 解释: 各位相加的过程为:3 + 8 = 11, 1 + 1 = 2。 由于 2 是一位数,所以返回 2。进阶:你可以不使用循环或者递归,且在 O(1) 时间复杂度内解决这个问题吗?二. 代码 emmm, 拿到这道题, 瞬间就想到了循环的解法,...原创 2018-10-08 14:37:47 · 284 阅读 · 0 评论 -
LeetCode - 204. 计数质数
一. 题目描述统计所有小于非负整数 n 的质数的数量。示例:输入: 10输出: 4解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。二. 代码class Solution { public int countPrimes(int n) { boolean[] isPrime = new boolean[...原创 2018-09-14 17:11:10 · 182 阅读 · 0 评论 -
LeetCode - 两数之和
本菜鸟也要开始刷LeetCode了。题目:两数之和题目描述:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]我的解法:1....原创 2018-07-24 19:38:41 · 162 阅读 · 0 评论 -
LeetCode - 合并两个有序链表
一. 题目描述将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4二. 我的解法比较传统的一道题,感觉跟归并排序很像。2.1 代码/** * Definition for singly-...原创 2018-08-03 16:55:41 · 276 阅读 · 0 评论 -
LeetCode - 最长公共前缀
一. 题目描述编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入: ["flower","flow","flight"]输出: "fl"示例 2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明原创 2018-07-30 22:45:55 · 147 阅读 · 0 评论 -
LeetCode - 最大子序和
一. 题目描述给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。二. 我的解法 这是一道经典...原创 2018-08-09 21:06:48 · 650 阅读 · 0 评论 -
LeetCode - 移除元素
一. 题目描述给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且...原创 2018-08-06 21:01:36 · 409 阅读 · 0 评论 -
LeetCode - 加一
一. 题目描述给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入...原创 2018-08-13 19:42:09 · 401 阅读 · 0 评论 -
LeetCode-对称二叉树
一. 题目描述给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3二. 我的解法2.1 ...原创 2018-08-16 19:51:08 · 593 阅读 · 0 评论 -
LeetCode - 二叉树的最小深度
一. 题目描述给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最小深度 2.二. 我的解法 最近递归用的越来越得心应手了,...原创 2018-08-21 17:49:41 · 200 阅读 · 0 评论 -
LeetCode - 旋转数组
一. 题目描述给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例 2:输入: [-1,-...原创 2018-09-04 17:47:03 · 168 阅读 · 0 评论 -
LeetCode - 阶乘后的零
一. 题目描述给定一个整数 n,返回 n! 结果尾数中零的数量。示例 1:输入: 3输出: 0解释: 3! = 6, 尾数中没有零。示例 2:输入: 5输出: 1解释: 5! = 120, 尾数中有 1 个零.说明: 你算法的时间复杂度应为 O(log n) 。二. 解法老实说, 这道题, 博主并没有做出来, 是抄的博客大神的答案提交的,所以,仔细研究一...原创 2018-09-03 20:03:20 · 509 阅读 · 2 评论 -
LeetCode - 196.打家劫舍
一. 题目描述你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。示例 1:输入: [1,2,3,1]输出: 4解释: 偷窃 1 号房屋 (金额 =...转载 2018-09-13 16:58:50 · 190 阅读 · 0 评论 -
Leetcode - 寻找重复的子树
一. 题目描述给定一棵二叉树,返回所有重复的子树。对于同一类的重复子树,你只需要返回其中任意一棵的根结点即可。两棵树重复是指它们具有相同的结构以及相同的结点值。示例 1: 1 / \ 2 3 / / \ 4 2 4 / 4下面是两个重复的子树: 2 ...原创 2019-08-05 14:18:09 · 426 阅读 · 0 评论
分享