![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
练习
文章平均质量分 51
练习
Raymood_
这个作者很懒,什么都没留下…
展开
-
leetcode::两个数组的交集
给定两个数组 nums1 和 nums2 ,返回它们的交集输出结果中的每个元素一定是 唯一 的。我们可以不考虑输出结果的顺序。输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输入:nums1 = [1,2,2,1], nums2 = [2,2]定义两个set,从头开始依次比较,以其中一个set为基准。解释:[4,9] 也是可通过的。原创 2024-03-26 15:58:11 · 264 阅读 · 0 评论 -
leetcode::二叉树的最近公共祖先
在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b456a72f3e61434392c6c0b646bac724.png#pic_center = 800x)百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。从root节点开始,判断p、q节点是在左子树还是右子树。原创 2024-03-24 11:32:16 · 193 阅读 · 0 评论 -
letcode::根据二叉树创建字符串
给你二叉树的根节点 root ,请你采用前序遍历的方式,将二叉树转化为一个由括号和整数组成的字符串,返回构造出的字符串。空节点使用一对空括号对 “()” 表示,转化后需要省略所有不影响字符串与原始二叉树之间的一对一映射关系的空括号对。前序遍历,从树中取出元素组成数组。原创 2024-03-23 14:43:04 · 283 阅读 · 0 评论 -
letcode::数组中的第k个最大元素
请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。输入: [3,2,3,1,2,4,5,5,6], k = 4。你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。输入: [3,2,1,5,6,4], k = 2。原创 2023-11-24 11:10:47 · 477 阅读 · 0 评论 -
letcode::最小栈
可以定义一个_min成员,每次栈插入数据时,就更新_min。但是如果栈删除的数据恰好是当前栈中最小的数据,_min的更新就很困难,且不论栈不允许遍历,遍历的O(N)复杂度是与题意“在常数时间内检索到最小元素的栈”相悖的。原创 2023-11-19 12:42:34 · 105 阅读 · 0 评论 -
牛客::栈的压入、弹出序列
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。如上,在比较入栈数据和出战数据是否匹配之后,都会入新的数据,所以可以简化一下步骤。如下以“压入:1 2 3 4 5、弹出:3 2 5 4 1”为例。模拟栈输入输出的过程。原创 2023-11-19 14:35:00 · 61 阅读 · 0 评论 -
用队列实现栈
用队列实现栈: 题目链接队列: 笔记链接用两个队列实现一个栈:原创 2022-06-06 13:33:23 · 98 阅读 · 0 评论 -
用栈实现队列
用栈实现队列:题目链接用两个栈实现队列:一个栈负责入队列,一个栈负责实现出队列。出队列时,如果负责出队列的栈为空,则将另一个栈的数据倒入其中;如若有数据则直接出即可原创 2022-06-06 13:33:07 · 130 阅读 · 0 评论 -
有效的括号
有效字符串必须是:其内部的左括号紧挨着相同类型的有括号那么创建一个栈,如果是“(”或者“[”或者“{”,那么将其压入栈中;如果是“)”或者“]”或者“}”,那么将其与上一个压入栈中的字符进行比对。若符合有效字符串的性质,则继续比对;若不符合则返回false...原创 2022-06-02 14:01:14 · 65 阅读 · 0 评论