摘要: 描述: 给定一个二叉树,原地将它展开为链表。 解答: 观察给定二叉树转换为链表的形式和前序遍历是相同的。因此考虑使用前序遍历的迭代算法, 前序遍历的迭代算法使用了一个辅助栈,栈中存放当前访问节点的右子树。先从左边依次向下访 问,然后在访问最下方节点的右子树,因此使用栈结构来实现访问。 以上所提到的为 阅读全文
posted @ 2019-11-29 21:03 一只小菜鸡a 阅读(103) 评论(0) 推荐(0)
摘要: 二叉树的前序遍历 二叉树的前序遍历过程相当于先访问最左边路径上的所有节点,然后在从后往前访问各个节点的右子树, 因此应该想到要使用栈结构。访问当前的节点的同时将其右子树节点放入栈中等待访问。先序遍历的代码如 下: vector<int> preorderTraversal(TreeNode* roo 阅读全文
posted @ 2019-11-29 20:47 一只小菜鸡a 阅读(852) 评论(0) 推荐(0)
摘要: 路径和 二 描述: 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 解答: 本题为上题的延伸,上一题只需找到一条满足条件的路径即可,本题需要找到所有满足条件的路径,并且还要将 路径上的节点保存下来,因此可以想到的算法为df 阅读全文
posted @ 2019-11-29 08:59 一只小菜鸡a 阅读(164) 评论(0) 推荐(0)