![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
每日一道leetcode
力扣刷题
古承风
写代码,但不做码农
展开
-
Leetcode之哈希查找
另外一种思路,我们可以把arr1中的元素都用字典存储起来其数量,然后遍历arr2中的元素,根据元素匹配形成第一步的res,之后我们只需要找到不在arr2中的元素放到后面即可。实际上,这就是相当于两个排序,我们把arr1中数据分为在和不在arr2的两个部分,对第一个部分,两个元素之间的大小比较规则是根据arr2中的相对顺序,对于第二个部分,进行正常的比较。需要注意的一点,每行的最后一个缝隙一定是最右侧边界,它是不能算的,因为题目要求不能沿着墙的两个垂直边缘之一画线,这样显然是没有穿过一块砖的。原创 2023-06-19 16:23:24 · 652 阅读 · 0 评论 -
Leetcode之二分查找
向后看一眼对于这种情况,当我们通过二分查找,找到第一个等于target的元素的时候,需要看一下mid右边的值是否也等于target,如果是,则我们需要继续对[mid+1,high]进行二分查找,如果不是,则说明mid就是我们要找的元素。题目链接解题思路参考上面的二分查找的变形,我们可以分别找到第一个大于等于target的下标和最后一个等于target的下标,然后返回这两个下标即可。原创 2023-06-05 08:41:17 · 767 阅读 · 0 评论 -
排序基础-快排&三路快排
快排的核心思想是,每次选取一个基准值,然后将数组分成两部分,一部分小于基准值,一部分大于基准值,然后递归处理这两部分。原创 2023-04-07 11:27:48 · 438 阅读 · 1 评论 -
剑指offer 09: 用两个栈实现队列
【代码】剑指offer 09: 用两个栈实现队列。原创 2023-01-16 18:35:34 · 112 阅读 · 0 评论 -
剑指offer 09 用两个栈实现一个队列
【代码】剑指offer 09 用两个栈实现一个队列。原创 2023-01-16 18:31:07 · 72 阅读 · 0 评论 -
leetcode 剑指offer 51 数组中的逆序对
在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。示例 1:限制:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/shu-zu-zhong-de-ni-xu-dui-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...原创 2022-06-30 09:33:12 · 84 阅读 · 0 评论 -
leetcode 75 颜色分类
给定一个包含红色、白色和蓝色、共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。必须在不使用库的sort函数的情况下解决这个问题。示例 1:示例 2:提示:进阶:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/sort-colors著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...原创 2022-06-14 01:45:02 · 113 阅读 · 0 评论 -
剑指offer45 把数组组成最小的数
输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。示例 1:示例 2:提示:说明:输出结果可能非常大,所以你需要返回一个字符串而不是整数拼接起来的数字可能会有前导 0,最后结果不需要去掉前导 0来源:力扣(LeetCode)链接:https://leetcode.cn/problems/ba-shu-zu-pai-cheng-zui-xiao-de-shu-lcof著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...原创 2022-06-14 01:17:28 · 65 阅读 · 0 评论 -
leetcode179最大数
给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。示例 1:示例 2:提示:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/largest-number著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...原创 2022-06-14 01:04:54 · 78 阅读 · 0 评论 -
leetcode252 会议室
给定一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间 intervals[i] = [starti, endi] ,请你判断一个人是否能够参加这里面的全部会议。示例 1:示例 2:提示:通过次数18,055提交次数31,511来源:力扣(LeetCode)链接:https://leetcode.cn/problems/meeting-rooms著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...原创 2022-06-13 21:48:30 · 378 阅读 · 0 评论 -
leetcode56 合并区间
以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。示例 1:示例 2:提示:来源:力扣(LeetCode)链接:https://leetcode.cn/problems/merge-intervals著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。...原创 2022-06-13 21:42:41 · 68 阅读 · 0 评论 -
排序算法时间复杂度和空间复杂度总结
原创 2022-05-13 18:51:19 · 187 阅读 · 0 评论 -
力扣-牛客网刷题三角形中的路径
题目给定一个三角形 triangle ,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标 i 或 i + 1 。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/IlPe0q著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。输入:trian原创 2021-10-22 11:29:10 · 117 阅读 · 0 评论 -
leetcode 233 数字1的个数
1. 题目给定一个整数 n,计算所有小于等于 n 的非负整数中数字 1 出现的个数。示例 1:输入:n = 13输出:6示例 2:输入:n = 0输出:0提示:0 <= n <=10910^91092. 分析看nnn的范围,力扣的数字上限是2×1092\times 10^92×109,所以时间复杂度必须是O(n)O(n)O(n),这意味着必须一遍遍历完成所有的计算,或者找出与nnn相关的公式,只计算一次。当前,力扣的经典思路为公式法:所有≤n\leq n≤原创 2022-05-11 17:42:09 · 325 阅读 · 0 评论