- 博客(23)
- 收藏
- 关注
原创 力扣打卡第23天 二叉搜索树中的众数
给你一个含重复值的二叉搜索树(BST)的根节点。方法一:当做普通的二叉树处理,用map。,找出并返回 BST 中的所有。如果树中有不止一个众数,可以按。(即,出现频率最高的元素)。方法二:利用二叉搜索树性质。
2025-07-10 14:35:34
254
原创 力扣打卡第十八天 判定平衡二叉树
之前做过关于求深度的方法可以是前序遍历、后序遍历、层次遍历。给定一个二叉树,判断它是否是 平衡二叉树。但是求高度应该用后序遍历才行。
2025-07-02 13:55:39
523
原创 打卡第十七天 二叉树的最小深度
最小深度是从根节点到最近叶子节点的最短路径上的节点数量。其实我觉得层次遍历最好记也最好理解,后序遍历更难。给定一个二叉树,找出其最小深度。叶子节点是指没有子节点的节点。
2025-06-30 09:00:00
141
原创 力扣打卡第十四天 二叉树遍历递归+非递归
批注:就是中序遍历稍微要下功夫记一下口诀:左边走到底,输出一下换右边。给你一棵二叉树的根节点。给定一个二叉树的根节点。
2025-06-25 22:48:13
641
原创 力扣打卡第十三天 小根堆(优先队列)
声明了一个优先队列pri_que,它存储pair<int, int>类型的元素,底层容器是vector<pair<int, int>>,并且使用自定义比较函数cmp来确定元素的优先级顺序。其中cmp中一定要写成operator,不然要报错。,请你返回其中出现频率前。
2025-06-23 11:41:48
292
原创 力扣打卡第十二天 双端队列(单调队列)
给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:输出:解释:滑动窗口的位置 最大值335567示例 2:输入:输出:[1]复习一下普通队列&双端队列。
2025-06-20 13:04:56
242
原创 力扣打卡第十一天 栈和队列互相表示
请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(myStack.empty();// 返回 False。仅用一个队列来实现栈。
2025-06-19 00:21:09
994
原创 力扣打卡第十天 KMP(不统一减一的next数组)
为什么我选择不统一减一的next数组,虽然统一减一这样回退j的时候直接j=next[j]即可。但是不减一的next数组内容值表示的含义更好理解,就是对折后相同的字符串长度是多少。"leeto" 没有在 "leetcode" 中出现,所以返回 -1。字符串的第一个匹配项的下标(下标从 0 开始)。第一个匹配项的下标是 0 ,所以返回 0。"sad" 在下标 0 和 6 处匹配。
2025-06-16 11:38:32
709
原创 力扣打卡第九天 字符串
中可能会存在前导空格、尾随空格或者单词间的多个空格。返回的结果字符串中,单词间应当仅用单个空格分隔,且不包含任何额外的空格。如果两个单词间有多余的空格,反转后的字符串需要将单词间的空格减少到仅有一个。如果字符串在你使用的编程语言中是一种可变数据类型,请尝试使用。反转后的字符串中不能存在前导空格和尾随空格。中使用至少一个空格将字符串中的。之间用单个空格连接的结果字符串。是由非空格字符组成的字符串。
2025-06-14 23:21:51
131
原创 力扣打卡第八天 双指针
相对于本题简单很多,因为本题是要求在一个集合中找出四个数相加等于target,同时四元组不能重复。是一个思路,都是使用双指针法, 基本解法就是在。请你找出并返回满足下述全部条件且。的基础上再套一层for循环。
2025-06-12 12:54:21
473
原创 力扣打卡第五天 自定义链表
/ 链表变为 1->2->3。// 现在,链表变为 1->3。以指示链表中的上一个节点。假设链表中的所有节点下标从。你可以选择使用单链表或者双链表,设计并实现自己的链表。是指向下一个节点的指针/引用。如果是双向链表,则还需要属性。
2025-06-09 22:28:37
310
原创 力扣打卡第三题 滑动窗口
最小覆盖子串 "BANC" 包含来自字符串 t 的 'A'、'B' 和 'C'。t 中两个字符 'a' 均应包含在 s 的子串中,继续复习std::unordered_map!因此没有符合条件的子字符串,返回空字符串。所有字符的子串,则返回空字符串。整个字符串 s 是最小覆盖子串。所有字符的最小子串。时间内解决此问题的算法吗?
2025-06-07 00:16:06
196
原创 力扣打卡第二天 滑动窗口
你想要尽可能多地收集水果。内部使用哈希表来存储键值对,通过哈希函数将键映射到表中的位置,从而实现快速访问。你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组。如果从第一棵树开始采摘,则只能采摘 [0,1] 这两棵树。如果从第一棵树开始采摘,则只能采摘 [1,2] 这两棵树。可以采摘 [1,2,1,1,2] 这五棵树。删除元素:nums.erase(key);可以采摘 [2,3,2,2] 这四棵树。可以采摘 [1,2,2] 这三棵树。,返回你可以收集的水果的。可以采摘全部 3 棵树。
2025-06-04 23:40:00
408
原创 力扣打卡第一天 二分类
8 的算术平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。不允许使用任何内置指数函数和算符,例如。由于返回类型是整数,结果只保留。说白了 都是套模板。
2025-06-03 23:50:21
112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人