自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 【代码随想录day18】530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先

给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值。差值是一个正数,其数值等于两值之差的绝对值。示例:输入:root = [4,2,6,1,3]输出:1。

2023-07-02 02:49:53 81 1

原创 【代码随想录day17】● 654.最大二叉树 ● 617.合并二叉树 ● 700.二叉搜索树中的搜索 ● 98.验证二叉搜索树

给定一个不重复的整数数组 nums。最大二叉树 可以用下面的算法从 nums 递归地构建:创建一个根节点,其值为 nums 中的最大值。递归地在最大值 左边 的 子数组前缀上 构建左子树。递归地在最大值 右边 的 子数组后缀上 构建右子树。返回 nums 构建的 最大二叉树。示例:输入:nums = [3,2,1,6,0,5]输出:[6,3,5,null,2,0,null,null,1]

2023-06-15 08:13:12 82

原创 【代码随想录day16】● 513.找树左下角的值 ● 112. 路径总和 113.路径总和ii ● 106.从中序与后序遍历序列构造二叉树 105.从前序与中序遍历序列构造二叉树

给定一个二叉树,在树的最后一行找到最左边的值。示例:输入: [1,2,3,4,null,5,6,null,null,7]输出: 7。

2023-06-14 03:51:44 108

原创 【代码随想录day15】110.平衡二叉树 ● 257. 二叉树的所有路径 ● 404.左叶子之和

给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:输入:root = [1,2,2,3,3,null,null,4,4]输出:false。

2023-06-10 08:07:30 124

原创 【代码随想录day14】104.二叉树的最大深度 559.n叉树的最大深度 ● 111.二叉树的最小深度 ● 222.完全二叉树的节点个数

给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。示例:给定二叉树 [3,9,20,null,null,15,7],3/\9 20/ \15 7返回它的最大深度 3。

2023-06-09 04:24:47 44

原创 【代码随想录day13】层序遍历 10 ● 226.翻转二叉树 ● 101.对称二叉树

给你二叉树的根节点 root ,返回其节点值的 层序遍历。(即逐层地,从左到右访问所有节点)。示例:输入:root = [3,9,20,null,null,15,7]输出:[[3],[9,20],[15,7]]学会二叉树的层序遍历,可以一口气打完以下十题:102.二叉树的层序遍历107.二叉树的层次遍历II199.二叉树的右视图637.二叉树的层平均值429.N叉树的层序遍历515.在每个树行中找最大值116.填充每个节点的下一个右侧节点指针。

2023-06-08 04:20:47 74

原创 【代码随想录day12】理论基础 ● 递归遍历 ● 迭代遍历 ● 统一迭代

分析一下为什么刚刚写的前序遍历的代码,不能和中序遍历通用呢,因为前序遍历的顺序是中左右,先访问的元素是中间节点,要处理的元素也是中间节点,所以刚刚才能写出相对简洁的代码,因为要访问的元素和要处理的元素顺序是一致的,都是中间节点。那么再看看中序遍历,中序遍历是左中右,先访问的是二叉树顶部的节点,然后一层一层向下访问,直到到达树左面的最底部,再开始处理节点(也就是在把节点的数值放进result数组中),这就造成了处理顺序和访问顺序是不一致的。那我们就将访问的节点放入栈中,把要处理的节点也放入栈中但是要做标记。

2023-05-17 08:35:25 47

原创 【代码随想录day11】239. 滑动窗口最大值 ● 347.前 K 个高频元素 ● 总结

略。

2023-05-02 01:54:21 49

原创 【代码随想录day10】20. 有效的括号 ● 1047. 删除字符串中的所有相邻重复项 ● 150. 逆波兰表达式求值

给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。示例:输入:s = “()[]{}”输出:true。

2023-04-29 10:22:05 66

原创 【代码随想录day9】● 栈与队列理论基础 ● 232.用栈实现队列 ● 225. 用队列实现栈

栈:后入先出队列:先入先出其他略。

2023-04-29 04:26:30 66

原创 【代码随想录day7】344.反转字符串 ● 541. 反转字符串II ● 剑指Offer 05.替换空格 ● 151.翻转字符串里的单词 ● 剑指Offer58-II.左旋转字符串

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,、使用 O(1) 的额外空间解决这一问题。示例:输入:s = [“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,“e”,“h”]

2023-04-26 06:24:31 47

原创 【代码随想录day6】454.四数相加II ● 383. 赎金信 ● 15. 三数之和 ● 18. 四数之和 ● 总结

我们来回顾一下,几道题目使用了双指针法。双指针法将时间复杂度:O(n^2)的解法优化为 O(n)的解法。也就是降一个数量级,题目如下:27.移除元素(opens new window)15.三数之和(opens new window)18.四数之和(opens new window)链表相关双指针题目:206.反转链表(opens new window)19.删除链表的倒数第N个节点(opens new window)

2023-04-25 06:09:14 46

原创 【代码随想录day5】哈希表理论基础 ● 242.有效的字母异位词 ● 349. 两个数组的交集 ● 202. 快乐数 ● 1. 两数之和

略。

2023-04-24 05:54:50 124

原创 【代码随想录day4】24. 两两交换链表中的节点 ● 19.删除链表的倒数第N个节点 ● 面试题 02.07. 链表相交 ● 142.环形链表II

给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。示例:输入:head = [1,2,3,4]输出:[2,1,4,3]

2023-04-22 11:39:57 100 1

原创 【代码随想录day3】链表理论基础 ● 203.移除链表元素 ● 707.设计链表 ● 206.反转链表

结构:单链表,双链表,循环链表删除节点:将指针指向下下个节点就行,python会自动释放内存(c++需要手动释放内存)添加节点:上一个节点指针指向新的节点,新的节点指针指向下一个节点性能分析:给定一个index,对该处的元素进行操作。

2023-04-21 09:39:02 62 1

原创 【代码随想录day2】977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例:输入:nums = [-4,-1,0,3,10]输出:[0,1,9,16,100]解释:平方后,数组变为 [16,1,0,9,100]排序后,数组变为 [0,1,9,16,100。

2023-04-20 11:51:07 107

原创 【代码随想录day1】数组理论基础,704. 二分查找,27. 移除元素

略。

2023-04-19 11:08:54 71 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除