Binary Tree Preorder Traversal
Given a binary tree, return the preorder traversal of its nodes' values.
For example:
Given binary tree {1,#,2,3}
,
1 \ 2 / 3
return [1,2,3]
.
Note: Recursive solution is trivial, could you do it iteratively?
Code:
1. Recursive:
class Solution { public: void findNode(vector<int> &nodes,TreeNode *node){ nodes.push_back(node->val); if(node->left) findNode(nodes,node->left); if(node->right) findNode(nodes,node->right); return; } vector<int> preorderTraversal(TreeNode *root) { vector<int> nodes; if(!root) return nodes; findNode(nodes,root); return nodes; } };
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步