摘要: 题目描述: 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些节点将会重叠(而另一些不会)。你需要将这两棵树合并成一棵新二叉树。合并的规则是:如果两个节点重叠,那么将这两个节点的值相加作为合并后节点的新值;否则,不为 null 的节点将直接作 阅读全文
posted @ 2024-11-25 11:41 wochh 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左 子树 只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 输入:root = [5,1,4,null,null,3 阅读全文
posted @ 2024-11-25 11:34 wochh 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 思路分析: 其实每次遍历就是划分左右子树数组,然后同样的递归先得到左右子树的根节点,再依次划分即可。注意下标索引的写 阅读全文
posted @ 2024-11-22 17:44 wochh 阅读(18) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给你一个二叉树的根节点 root ,按 任意顺序 ,返回所有从根节点到叶子节点的路径。 叶子节点 是指没有子节点的节点。 输入:root = [1,2,3,null,5] 输出:["1->2->5","1->3"] 思路分析: 这个题一眼回溯,回溯和递归其实也是紧密相关的。 1.确定回溯 阅读全文
posted @ 2024-11-21 17:52 wochh 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 输入:root = [3,9,20,null,null,15,7] 输出:[[15,7],[9,20],[3]] 思路分析: 这个题主要还是二叉树的层序遍历问 阅读全文
posted @ 2024-11-21 17:37 wochh 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 思路分析: 递归法: 前序遍历的顺序是中左右的顺序。那么每个子树都是这个顺序,所以可以使用递归进行遍历。递归遍历有3部曲 1.确定递归函数的参数和返回值。 因为返回值要求保存在一个数组中,所以递归函数的参数应该包括树的根节点和 阅读全文
posted @ 2024-11-21 17:17 wochh 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给你一个整数数组 nums ,数组中共有 n 个整数。132 模式的子序列 由三个整数 nums[i]、nums[j] 和 nums[k] 组成,并同时满足:i < j < k 和 nums[i] < nums[k] < nums[j] 。 如果 nums 中存在 132 模式的子序列 阅读全文
posted @ 2024-10-31 11:37 wochh 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 题目描述: 给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 思路分析: 没到指定的位置范围时,直接进行链表的链接,然后到了需要转换的范围就将这些节点用一个栈保存 阅读全文
posted @ 2024-10-28 15:49 wochh 阅读(8) 评论(0) 推荐(0) 编辑
摘要: # 题目描述: 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始 阅读全文
posted @ 2024-10-28 10:23 wochh 阅读(10) 评论(0) 推荐(0) 编辑
摘要: # 题目描述: 给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 要求时间复杂度为O(nlogn) ## 思路分析: 按要求需要使用归并排序。那么归并排序的思路是分治的思想,如下图所示: 简单说下思路:先将每次将链表划分成两个部分,直到不能划分【递归】,然后对两个链表进行排 阅读全文
posted @ 2024-10-26 11:14 wochh 阅读(13) 评论(0) 推荐(0) 编辑