144. 二叉树的前序遍历
题目:给你二叉树的根节点 root ,返回它节点值的 前序 遍历。
示例 1:
输入:root = [1,null,2,3]
输出:[1,2,3]
示例 2:
输入:root = []
输出:[]
示例 3:
输入:root = [1]
输出:[1]
示例 4:
输入:root = [1,2]
输出:[1,2]
class Solution {<!-- -->
public:
void traversal(TreeNode* cur, vector<int> & result)
{<!-- -->
if(cur == nullptr) return;
result.push_back(cur->val);
traversal(cur->left,result);
traversal(cur->right,result);
}
vector<int> preorderTraversal(TreeNode* root) {<!-- -->
vector<int> result;
traversal(root, result);
return result;
}
};
时间复杂度:O(n),其中 n是二叉树的节点数。每一个节点恰好被遍历一次。
空间复杂度:O(n),为递归过程中栈的开销,平均情况下为O(logn),最坏情况下树呈现链状,为 O(n)。
[[C++]Leetcode超高效刷题顺序及题目详解笔记(持续更新中)]
/***Definitionforabinarytreenode*publicclassTreeNode{*publicintval;*publicTreeNodeleft;*publicTreeNo
LeetCode:二叉树的前序遍历【144】题目描述给定一个二叉树,返回它的前序遍历。示例:输入:[1,null,2,3]1\2/3输出:[1,2,3]题目分析如果用递归代码的话,很简单,先序遍历,就
二叉树的前序遍历题目描述:给你二叉树的根节点root,返回它节点值的前序遍历。示例说明请见LeetCode官网。来源:力扣(LeetCode)链接:https://leetcodecncom/prob
给定一个二叉树,返回它的前序遍历。示例:输入:[1,null,2,3]输出:[1,2,3]解题思路1,因为题中要求返回一个存放二叉树的前序遍历的数组,所以需要知道树中有多少个结点,申请多大的数组来存
题目描述给定一个二叉树,返回它的前序遍历。示例:输入:[1,null,2,3]1\2/3输出:[1,2,3]题目链接:https://leetcodecncom/problems/binarytree
144二叉树的前序遍历知识点:二叉树;递归;Morris遍历题目描述给你二叉树的根节点root,返回它节点值的前序遍历。示例输入:root[1,null,2,3]输出:[1,2,3]输入:root[
文章目录144二叉树的前序遍历前序遍历思路迭代94二叉树的中序遍历前序遍历思路迭代145二叉树的后序遍历后序遍历思路迭代144二叉树的前序遍历题目链接:144二叉树的前序遍历前序遍历思路–迭代前序遍历
include<stdioh>typedefstructNode{intval;structNode*Lchild;structNode*Rchild;}*BTree,BTnode;/*创
文用递归算法实现二叉树的前序、中序和后序遍历,提供Java版的基本模板,在模板上稍作修改,即可解决LeetCode144BinaryTreePreorderTraversal(二叉树前序遍历),94
144二叉树的前序遍历给你二叉树的根节点root,返回它节点值的前序遍历。简单难度。先访问根节点,再前序遍历左子树,再前序遍历右子树。最简单的就是使用递归的方式。publicList<Integ