![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
深度优先
Huiex胖子君
广告位招租
展开
-
剑指 Offer 36. 二叉搜索树与双向链表
二叉搜索树的中序遍历是有序的,所以可以在中序遍历的基础上进行添加将中序遍历中的输出结点替换为本题所需要的结点中间的连接(具体看注解)public class Offer36 { /** 二叉搜索树的中序遍历是有序的,所以可以在中序遍历的基础上进行添加*/ /** 设立两个辅助指针,一个用来指向当前结点,一个指向上一个结点*/ private Node pre; private Node head; public Node treeToDoublyList(No原创 2021-12-05 20:37:23 · 145 阅读 · 0 评论 -
剑指 Offer 34. 二叉树中和为某一值的路径
深度优先 回溯法public class Offer34 { /** 先创建一个List用来存放路径*/ private List<List<Integer>> result = new ArrayList<>();//结果集 private List<Integer> path = new ArrayList<>();//设置一个变量,来判断目前路径是否满足目标路径 public List<List&原创 2021-12-05 19:14:41 · 405 阅读 · 0 评论 -
剑指 Offer 68 - II. 二叉树的最近公共祖先
深度优先查找一开始就是普通递归,然后找到之后进行分条件的判断就三种情况,当前结点root的左右两个结点为p、q,则当前结点就是最近公共祖先结点当前结点为p,那么p即当前结点为最近公共祖先结点当前结点为q,那么q即当前结点为最近公共祖先结点 public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) { /** 递归终止的边界为 当前结点为空,或者当前结点为p,或者q原创 2021-11-21 12:47:49 · 335 阅读 · 1 评论