![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leecode刷题
文章平均质量分 93
Deep_My
这个作者很懒,什么都没留下…
展开
-
LC刷题记录——数学专题
x是质数,则它的因数只包含 [1,x]原创 2022-09-17 10:51:46 · 328 阅读 · 1 评论 -
LC——周赛记录
例如,子数组 [3,4,5] ,但是子数组 [1,3,5] 不符合要求。给你一个下标从 0 开始的正整数数组 tasks ,表示需要 按顺序 完成的任务,其中 tasks[i] 表示第 i 件任务的 类型。给你下标从 0 开始、长度为 n 的字符串 pattern ,它包含两种字符,‘I’ 表示 上升 ,‘D’ 表示 下降。给你一个下标从 0 开始的整数数组 nums ,你必须将数组划分为一个或多个 连续 子数组。子数组 恰 由 3 个相等元素组成,例如,子数组 [4,4,4]。原创 2022-08-21 13:47:11 · 644 阅读 · 0 评论 -
Leetcode刷题笔记——剑指offer II (六)【图】
对于图中的任意两个节点。原创 2022-07-16 22:39:14 · 399 阅读 · 0 评论 -
Leetcode刷题笔记——剑指offer II (三)【哈希表、栈、堆、前缀树】
哈希表剑指 Offer II 030. 插入、删除和随机访问都是 O(1) 的容器设计一个支持在平均 时间复杂度 O(1) 下,执行以下操作的数据结构:insert(val):当元素 val 不存在时返回 true ,并向集合中插入该项,否则返回 false 。remove(val):当元素 val 存在时返回 true ,并从集合中移除该项,否则返回 false 。getRandom:随机返回现有集合中的一项。每个元素应该有 相同的概率 被返回。示例 :输入: inputs = ["Ran原创 2022-06-11 21:39:58 · 413 阅读 · 0 评论 -
Leetcode刷题笔记——剑指offer II (四)【队列、树】
目录线段树307. 区域和检索 - 数组可修改剑指 Offer II 058. 日程表 (线段树)线段树307. 区域和检索 - 数组可修改给你一个数组 nums ,请你完成两类查询。其中一类查询要求 更新 数组 nums 下标对应的值另一类查询要求返回数组 nums 中索引 left 和索引 right 之间( 包含 )的nums元素的 和 ,其中 left <= right实现 NumArray 类:NumArray(int[] nums) 用整数数组 nums 初始化对象void原创 2022-06-06 16:04:13 · 279 阅读 · 0 评论 -
TopK 问题——思路总结
面试常考题:总结来说当数组非常大时,而 K 比较小时,我们可以使用二叉堆的方法当数组非常大时,K 也比较大,我们使用快排剪枝的方法剑指 Offer 40. 最小的k个数输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。示例 1:输入:arr = [3,2,1], k = 2输出:[1,2] 或者 [2,1]示例 2:输入:arr = [0,1,2,1], k = 1输出:[0] 解法一:原创 2022-05-27 22:44:49 · 232 阅读 · 0 评论 -
Leetcode刷题笔记——剑指offer II (五)【二分、排序、回溯】
二分查找剑指 Offer II 069. 山峰数组的顶部符合下列属性的数组 arr 称为 山峰数组(山脉数组) :arr.length >= 3存在 i(0 < i < arr.length - 1)使得:arr[0] < arr[1] < ... arr[i-1] < arr[i]arr[i] > arr[i+1] > ... > arr[arr.length - 1]给定由整数组成的山峰数组 arr ,返回任何满足 arr[0] &原创 2022-05-15 22:40:22 · 1084 阅读 · 0 评论 -
Leetcode刷题笔记——剑指offer II (二)【动态规划】
416. 分割等和子集给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。示例 1:输入:nums = [1,5,11,5]输出:true解释:数组可以分割成 [1, 5, 5] 和 [11] 。示例 2:输入:nums = [1,2,3,5]输出:false解释:数组不能分割成两个元素和相等的子集。提示:1 <= nums.length <= 2001 <= nums[i] <=原创 2022-05-07 13:46:09 · 1501 阅读 · 0 评论 -
leetcode刷题笔记——贪心
11. 盛最多水的容器给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。示例 2:原创 2022-04-27 17:14:55 · 909 阅读 · 0 评论 -
Leetcode刷题笔记——剑指offer II (一)【整数、数组、字符串、链表】
整数剑指 Offer II 001. 整数除法给定两个整数 a 和 b ,求它们的除法的商 a/b ,要求不得使用乘号 ‘*’、除号 ‘/’ 以及求余符号 ‘%’ 。注意:整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231−1]。本题中,如果除法结果溢出,则返回 231 − 1示例 1:输入:a = 15, b =原创 2022-04-21 14:01:14 · 2332 阅读 · 0 评论 -
leetcode刷题笔记——剑指offer(三)【栈、队列、树、动态规划】
栈与队列剑指 Offer 59 - I. 滑动窗口的最大值给定一个数组 nums 和滑动窗口的大小 k,请找出所有滑动窗口里的最大值。示例:输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值--------------- -----[1 3 -1] -3 5 3 6 7 3 1 [3 -1 -3] 5原创 2022-04-03 20:21:49 · 1960 阅读 · 0 评论 -
leetcode刷题笔记——剑指offer(二)[回溯、排序、位运算、数学、字符串]
搜索与回溯剑指 Offer 12. 矩阵中的路径给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。例如,在下面的 3×4 的矩阵中包含单词 “ABCCED”(单词中的字母已标出)。示例 1:输入:board = [["A","B","C","E"],[原创 2022-03-12 16:06:53 · 465 阅读 · 0 评论 -
leetcode刷题笔记——剑指offer
剑指 Offer 30. 包含min函数的栈定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。示例:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);minStack.push(-3);minStack.min(); --> 返回 -3.minStack.pop();minStack.top(原创 2022-03-08 09:12:00 · 511 阅读 · 0 评论 -
leetcode——刷题笔记——热门100题
2. Add Two NumbersYou are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order, and each of their nodes contains a single digit. Add the two numbers and return the sum as a linked list.You may as原创 2022-03-03 22:01:25 · 217 阅读 · 0 评论 -
Leetcode刷题笔记——动态规划
动态规划的⼀般流程就是三步:暴⼒的递归解法 -> 带备忘录的递归解法 -> 迭代的动态规划解法。就思考流程来说,就分为⼀下⼏步:找到状态和选择 -> 明确 dp 数组/函数的定义 -> 寻找状态之间的关系。509. Fibonacci NumberThe Fibonacci numbers, commonly denoted F(n) form a sequence, called the Fibonacci sequence, such that each number is原创 2022-02-28 22:30:50 · 1063 阅读 · 0 评论 -
leecode刷题笔记——数据结构(二)
tree 树144. Binary Tree Preorder TraversalGiven the root of a binary tree, return the preorder traversal of its nodes’ values.Example 1:Input: root = [1,null,2,3]Output: [1,2,3]Example 2:Input: root = []Output: []Example 3:Input: root = [1]Out原创 2022-02-02 00:15:20 · 1266 阅读 · 0 评论 -
leecode刷题笔记——数据结构(一)
数组217. Contains Duplicate 存在相同元素Given an integer array nums, return true if any value appears at least twice in the array, and return false if every element is distinct.Example 1:Input: nums = [1,2,3,1]Output: trueExample 2:Input: nums = [1,2,3,原创 2021-12-15 21:31:38 · 838 阅读 · 0 评论