LeetCode【力扣】
LeetCode 算法
眉头
chase
展开
-
力扣【LeetCode】—— 环形链表(判断是否有环)、环形链表(返回入环节点)【java】
文章目录环形链表(判断是否有环)环形链表(返回入环节点)环形链表(判断是否有环)题目地址:https://leetcode-cn.com/problems/linked-list-cycle/题目:给定一个链表,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为原创 2020-12-02 09:02:41 · 1814 阅读 · 0 评论 -
力扣【LeetCode】—— 合并有序数组、合并有序链表【java】
文章目录合并有序数组合并有序链表合并有序数组题目地址: https://leetcode-cn.com/problems/merge-sorted-array/题目:给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1原创 2020-12-02 09:02:10 · 798 阅读 · 0 评论 -
力扣【LeetCode】—— 旋转数组、链表反转【java】
文章目录旋转数组链表反转旋转数组题目链接:https://leetcode-cn.com/problems/rotate-array/题目: 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例: [1,2,3,4,5,6,7] 和 k = 3结果: [5,6,7,1,2,3,4]说明: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。 要求使用空间复杂度为 O(1) 的 原地 算法。解法一: 暴力解决该解决方案虽然满足题意中的空间复杂度条件原创 2020-12-02 09:01:43 · 774 阅读 · 0 评论 -
力扣【LeetCode】—— 70. 爬楼梯【java】
题目地址:https://leetcode-cn.com/problems/climbing-stairs/原创 2020-11-24 16:18:55 · 723 阅读 · 0 评论 -
力扣【LeetCode】—— 11. 盛最多水的容器【java】
题目地址:https://leetcode-cn.com/problems/container-with-most-water/题目: 给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明: 不能倾斜容器。示例:解法一(暴力求解): 思路:遍历计算最大值,两层循环,选中一条垂直线,然后根据这原创 2020-11-24 16:18:31 · 749 阅读 · 0 评论 -
力扣【LeetCode】—— 1. 两数之和【java】
题目链接:https://leetcode-cn.com/problems/two-sum/题目 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。说明: 可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1]解法一(暴力枚举)这原创 2020-11-24 16:17:52 · 602 阅读 · 0 评论 -
力扣【LeetCode】—— 15. 三数之和【java】
题目链接:https://leetcode-cn.com/problems/3sum/题目: 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意: 答案中不可以包含重复的三元组。示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 返回:[[-1, 0, 1],[-1, -1, 2]]该题目的难点是如何保证不重复,因为题目中要求“不可以包含重复的原创 2020-11-24 16:17:20 · 624 阅读 · 0 评论 -
力扣【LeetCode】—— 283.零移动【java】
题目: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0]说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。方案1思路:统计所有非0数字的个数,统计的过程中依次将非0的数字存放到数组,最后填充0即可class Solution { public void moveZeroes(int[] nums) { int j=0; .原创 2020-11-24 15:47:49 · 595 阅读 · 0 评论 -
力扣【LeetCode】—— 189. 旋转数组【java】
题目链接:https://leetcode-cn.com/problems/rotate-array/题目: 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。示例: [1,2,3,4,5,6,7] 和 k = 3结果: [5,6,7,1,2,3,4]说明: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。 要求使用空间复杂度为 O(1) 的 原地 算法。方案一:暴力该解决方案虽然满足题意中的空间复杂度条件,但是时间复杂度为O(k*n),pub原创 2020-11-24 15:46:41 · 743 阅读 · 0 评论 -
力扣【LeetCode】—— 26. 排序数组去重、66. 加一【java】
排序数组去重【双指针】题目地址:https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/题目:给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例:指定数组nums = [1,1,2] 返回2 nums 前两个元素被修改为 1,2你不需要考虑数组中超..原创 2020-11-24 15:46:08 · 772 阅读 · 0 评论