[leetcode]二叉树先序遍历
来源:互联网 发布:哪里招淘宝客服 编辑:程序博客网 时间:2024/05/07 10:32
struct TreeNode {int val; TreeNode *left; TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) {}};//先序遍历递归版本vector<int> result;vector<int> preorderTraversal(TreeNode *root) {if (root!=NULL){result.push_back(root->val);preorderTraversal(root->left);preorderTraversal(root->right);}return result;}//先序遍历栈版本1(数组)const int maxsize =1000;vector<int> preorderTraversal(TreeNode *root) {vector<int> result;TreeNode *st[maxsize],*p;int top=-1;if (root!=NULL){top++;st[top]=root;while(top>-1){p=st[top];top--;result.push_back(p->val);if (p->right!=NULL){top++;st[top]=p->right;}if (p->left!=NULL){top++;st[top]=p->left;}}}return result;}//先序遍历栈版本2(STL)vector<int> preorderTraversal(TreeNode *root) {vector<int> result;TreeNode *p;stack<TreeNode *> st; if (root!=NULL){st.push(root);//根节点进栈while(!st.empty()){p=st.top(); //退栈并访问该节点st.pop();result.push_back(p->val);if (p->right!=NULL)//右孩子先进栈{st.push(p->right);}if (p->left!=NULL){st.push(p->left);}}}return result;}
0 0
- [leetcode]二叉树先序遍历
- [LeetCode]144 二叉树先序遍历
- [leetcode]二叉树中序遍历
- leetcode二叉树遍历
- [leetcode]二叉树遍历
- [LeetCode]94 二叉树中序遍历
- [LeetCode]145 二叉树后序遍历
- LeetCode之二叉树中序迭代遍历
- LeetCode Binary Tree Preorder Traversal (二叉树先序遍历非递归)
- Leetcode Binary Tree Preorder Traversal 二叉树先序遍历
- 144.leetcode Binary Tree Preorder Traversal(medium)[二叉树先序遍历]
- [leetcode-二叉树先序遍历]--144.Binary Tree Preorder Traversal
- 二叉树先序遍历(递归)
- 数据结构 -- 二叉树先序遍历
- 二叉树先序遍历
- 二叉树先序遍历
- 二叉树先序遍历
- 二叉树先序遍历
- Octave教程 Octave Tutorial
- Help him
- boost::condition的用法
- Android在一个应用中启动另一个应用的Activity时失败的解决办法
- div自动适应内容的高度
- [leetcode]二叉树先序遍历
- Colored Cubes
- android 定时器
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- web服务器nginx和apache的对比分析
- 【CODEFORCES】 A. Cheap Travel
- jBPM 6 开发 eclipse 插件安装
- Android中的dispatchTouchEvent()、onInterceptTouchEvent()和onTouchEvent()
- 春节网购安全实用小贴士