
leetcode_test
暮归
初学者
展开
-
leetcode.70.爬楼梯
爬楼梯,一开始想的比较简单,想着暴力解决。后来看评论发现是斐波那契数列,就想着用递归,竟然超时了。网上查了一下,发现用数组求斐波那契数列用时比较少,把代码抄在这。 class Solution { public int climbStairs(int n) { if (n == 1) return 1; else if (n == 2)...转载 2018-12-01 21:39:43 · 129 阅读 · 0 评论 -
leetcode 58. 最后一个单词的长度
给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。如果不存在最后一个单词,请返回 0 。说明:一个单词是指由字母组成,但不包含任何空格的字符串。题目中说明,字符串单词间仅由空格分开,所以可以用空格将字符串分隔开,考虑到字符串末尾可能有空格,要先删去空格,否则会数组角标越界。class Solution { public int lengthOfL...原创 2018-12-01 21:46:07 · 172 阅读 · 0 评论 -
leetcode 88. 合并两个有序数组
给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 ...转载 2018-12-05 15:14:43 · 127 阅读 · 0 评论 -
leetcode 66. 加一
给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例 1:输入: [1,2,3]输出: [1,2,4]解释: 输入数组表示数字 123。示例 2:输入: [4,3,2,1]输出: [4,3,2,2]解释: 输入数组表示数字 4321...原创 2018-12-05 15:28:27 · 125 阅读 · 0 评论 -
19. 删除链表的倒数第N个节点
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。我们可以使用两个指针而不是一个指针。第一个指针从列表的开头向前移动 n+1步,而第二个指针将从列表的开头出...转载 2018-12-17 14:23:22 · 121 阅读 · 0 评论 -
leetcode 21.合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4分析了一下,选择使用归并排序的方法。这题好像面试经常考,将大佬的代码放在下面多多学习。class Solution { public ...转载 2019-02-21 21:53:48 · 144 阅读 · 0 评论 -
leetcode136.只出现一次的数组(Java)
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4这个题目我用的方法挺暴力的,因为题目需要的不是数的位置,而是数本身。我先对数组进行一个选择排序,将...原创 2019-03-05 21:05:18 · 156 阅读 · 0 评论