<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[GlAz_C的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/GlAz_C</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; GlAz_C]]></copyright><item><title><![CDATA[二叉树两节点的最短距离(一次dfs完成)]]></title><link>https://blog.youkuaiyun.com/GlAz_C/article/details/123290205</link><guid>https://blog.youkuaiyun.com/GlAz_C/article/details/123290205</guid><author>GlAz_C</author><pubDate>Sat, 05 Mar 2022 10:20:15 +0800</pubDate><description><![CDATA[字节面试问到的，leetcode上没看到，记录一下自己的做法

此题近似于leetcode 236.二叉树的最近公共祖先，但有较大不同

做法为：对二叉树进行dfs遍历，递归函数写法为func dfs(root,p,q *TreeNode,ans *int) int，

其中root为当前遍历的节点，p,q为要求的两个节点，ans是答案的指针，返回int值

总体思想为利用返回值表征两个节点中的一个是否出现过，并记录距当层的高度，若根节点、左子树、右子树中的二者同时出现p,q则更新答案

分多种情况讨论：
]]></description><category></category></item></channel></rss>