LeetCode
文章平均质量分 76
XJTU_WJGao
这个作者很懒,什么都没留下…
展开
-
每日刷题——LeetCode 80 剑指offer6 18 22 24 25 35 52 链表专场
Leetcode80 删除有序数组中的重复项Ⅱ给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 最多出现两次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:输入:nums = [1,1,1,2,2,3]输出:5, nums = [1,1,2,2,3]解释:函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。 不需要考虑数组中超出新长度原创 2021-04-07 14:46:15 · 283 阅读 · 0 评论 -
每日刷题——双指针专场 LeetCode88 剑指offer6 18 57 58
今天是假期最后一天了,还是偷懒了半天,害。Leetcode88 合并两个有序数组给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 的空间大小等于 m + n,这样它就有足够的空间保存来自 nums2 的元素。示例 1:输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3原创 2021-04-06 15:19:27 · 199 阅读 · 0 评论 -
每日刷题——LeetCode781 剑指offer41 59
今天是清明节,不过和我有什么关心呢,不过又是刷题背八股的一天罢了。Leetcode781 森林中的兔子森林中,每个兔子都有颜色。其中一些兔子(可能是全部)告诉你还有多少其他的兔子和自己有相同的颜色。我们将这些回答放在 answers 数组里。返回森林中兔子的最少数量。示例:输入: answers = [1, 1, 2]输出: 5解释:两只回答了 “1” 的兔子可能有相同的颜色,设为红色。之后回答了 “2” 的兔子不会是红色,否则他们的回答会相互矛盾。设回答了 “2” 的兔子为蓝色。此原创 2021-04-05 16:01:13 · 180 阅读 · 0 评论 -
每日刷题——Leetcode 动态规划专场
周六在实验室呆了一天,好不容易有个能够自由支配的时间,刚好每日一题是一个动态规划类的题目,而动态规划又是极为常见的类型,索性一次性看了很多道动态规划题目,不过主要是easy和偏下难度的mid,一步一步来嘛。动态规划这里参考了https://blog.csdn.net/zw6161080123/article/details/80639932能采用动态规划求解的问题的一般要具有3个性质:(1) 最优化原理:如果问题的最优解所包含的子问题的解也是最优的,就称该问题具有最优子结构,即满足最优化原理原创 2021-04-04 14:51:25 · 327 阅读 · 0 评论 -
每日刷题——LeetCode42 剑指offer40
昨天组会,所以停更一天。Leetcode42 接雨水给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。今天的每日一题,是一道hard题。分享一个官方题解下的评论“打开一看,困难题(眉头一皱),定睛一看,接雨水,那没事了”。这一题首先难点在于,如果确定一个位置能装的水的最大高度。一个位置能装水的最大高度,取决于左右两侧的最大高度的最小值。比如该位置左侧最大高度3,右侧最大高度5,那么能装的水的最大高度就是3。根据找个条件,就很容易想到,用两个数组分别原创 2021-04-03 15:59:05 · 135 阅读 · 0 评论 -
每日刷题——LeetCode 78 90
周五要开组会了,所以没有留出来太多时间刷题,主要是做了一道每日一题,以及一道相关的题目LeetCode78 子集给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。这一题是一道典型的回溯题。也是第一次遇到回溯类型的题目。回溯搜索是深度优先搜索(DFS)的一种,回溯法通俗的将其采用的思想是“一直向下走,走不通就掉头”,类似于树的先序遍历。dfs和回溯法其主要的区别是:回溯法在求解过程中不保留完整的树结构原创 2021-04-01 12:59:17 · 92 阅读 · 0 评论 -
每日刷题——LeetCode 74 剑指offer 9、10、11
今天主要是三道关于数据结构的题,和队列和栈有关,以及每日一题。LeetCode74 搜索二维矩阵编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。这一题最开始还以为和前一天的剑指offer第4题一样,不过还是不同。这题思路很简单,是个递增的序列,要找目标值,很容易想到使用一个二分方法class Solution { public boolean searchMatrix(int[原创 2021-03-31 10:58:31 · 127 阅读 · 0 评论 -
每日刷题——leetcode 剑指offer 3、4、5、29、50
开始准备找工作,目标java开发,从0开始学习java,每日更新刷题的心得。今天主要是几道基础的数组与矩阵。剑指offer3 数组中重复的数字在一个长度为 n 的数组里的所有数字都在 0 到 n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字是重复的,也不知道每个数字重复几次。请找出数组中任意一个重复的数字。这一题思路很简单,只需要构造一个hash表,表示每个数字重复的次数,即可,时间复杂度O(n),空间复杂度O(n)。这里题目中有一个细节,数组里的所有数字都在0到n-1范围内,那么可以原创 2021-03-30 11:27:48 · 102 阅读 · 0 评论