自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 【链表】LeetCode #19 删除链表的倒数第N个节点(时间复杂度O(n),在所有Java提交中击败了100%的用户)

题目链接:LeetCode #19 删除链表的倒数第N个节点题目描述:#19. 删除链表的倒数第N个节点给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?通过次数205,209 提交次数524,857分析:这个题的难度在于如何在一趟

2020-07-30 11:08:46 231

原创 【链表】LeetCode #83 删除排序链表中的重复元素 (两种方法)

题目链接:LeetCode #83 删除排序链表中的重复元素题目描述:#83. 删除排序链表中的重复元素给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3通过次数123,788 提交次数242,480方法一:直接对比当前结点的值 cur.val 与下一个结点的值 cur.next.val 是否相等,若相等

2020-07-30 10:21:37 222

原创 【链表】LeetCode #21 合并两个有序链表

题目链接:LeetCode #21 合并两个有序链表题目描述:#21. 合并两个有序链表(难度:简单)将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4通过次数325,435提交次数512,003分析:该题是链表题目中的基础题,太久没接触链表了,还是给自己绕了好久…定义两个指针 head、pre:初始化

2020-07-28 17:16:28 181

原创 【贪心算法】LeetCode #134 加油站

题目链接:LeetCode #134 加油站题目描述:#134. 加油站(难度:中等)在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。说明:如果题目有解,该答案即为唯一答案。输入数组均为非空数组,且长度相同。输入数组中的元素均为非负数。示例 1

2020-07-28 09:39:45 286

原创 【贪心算法】LeetCode #122 买卖股票的最佳时机 II

题目链接:LeetCode #122 买卖股票的最佳时机 II题目描述:#122. 买卖股票的最佳时机 II给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易

2020-07-27 16:38:02 258

原创 【贪心算法】LeetCode #55 跳跃游戏

题目链接:LeetCode #55 跳跃游戏题目描述:#55. 跳跃游戏给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例 1:输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。示例 2:输入: [3,2,1,0,4]输出: false解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的

2020-07-27 11:05:26 248

原创 【Java基础】i = i + 1,i += 1, i++, ++i 的区别

问题引入:最开始是因为看到了一个题:① short s1 = 1; s1 = s1 + 1;② short s1 = 1; s1 += 1;上面两条是否都可以成功编译?答:① 中,由于 1 是 int 类型的,因此 s1 + 1 也是 int 类型的,需要进行强制类型转换,才能赋值给 short;② 中,s1 += 1 就相当于 s1 = ((short)s1 + 1),+= 本身就隐含着强制类型转换,故可正确编译。问题拓展:上面涉及到了 += 和 s1 = s1 + 1 的区别,除了 +=

2020-07-26 17:37:59 917

原创 【贪心入门】LeetCode #455 分发饼干

(终于考完试了啊啊啊啊啊)题目链接:LeetCode #455 分发饼干题目描述:#455. 分发饼干假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。注意:你可以假设胃口值为正。一个小

2020-07-21 10:08:03 198

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除