LeetCode Everyday-- 94,144,145递归解法
来源:互联网 发布:冰球规则知乎 编辑:程序博客网 时间:2024/05/16 15:27
Binary Tree Inorder Traversal
Given a binary tree, return the inorder traversal of its nodes’ values.
For example:
Given binary tree {1,#,2,3},
1
\
2
/
3
return [1,3,2].
三个题目类似,我就放在一起,分别是树的先序遍历,中序遍历和后序遍历。递归解法是非常简单的,也可以AC。
但是题目中有一句话Note: Recursive solution is trivial, could you do it iteratively? 最近递归用多了,迭代都不会用了,有时间再想想迭代的方法。
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public: vector<int> inorderTraversal(TreeNode* root) { vector<int> v; travel(root,v); return v; }private: void travel(TreeNode* root,vector<int> &v){ if(root == NULL){ return ; } //先序遍历 //v.push_back(root->val); travel(root->left,v); //中序遍历 v.push_back(root->val); travel(root->right,v); //后序遍历 //v.push_back(root->val); }};
0 0
- LeetCode Everyday-- 94,144,145递归解法
- Leetcode Basic Calculator 递归解法
- LeetCode Everyday --226
- LeetCode Everyday --171
- LeetCode Everyday -- 253
- LeetCode Everyday -- 70
- LeetCode Everyday--52
- LeetCode Everyday -- 108
- LeetCode Everyday -- 83
- LeetCode Everyday -- 141
- LeetCode之maxDepth非递归解法
- LeetCode maximumDepthOfBinaryTree递归,迭代解法
- LeetCode 101. Symmetric Tree 递归解法
- Leetcode Symmetric Tree 递归和非递归解法
- leetcode:path sum(I) 递归与非递归解法
- LeetCode Everyday: 1. Two Sum
- Leetcode Everyday: 344. Reverse String
- Leetcode Everyday: 292. Nim Game
- echars
- 12. 扩展ibatis
- Java 网络:InetAddress类的应用以及通过Socket实现TCP编程
- 解决composer 下载错误
- Thai language
- LeetCode Everyday-- 94,144,145递归解法
- 浏览器中的开发人员工具(IE9的F12和Chrome的Ctrl+Shift+I)-网页分析的利器
- UIWebView内存问题
- 大神博客
- Android studio internal http server disabled
- 6日摘取男子100米自由泳桂冠的宁泽涛则在副项50米自由泳半决赛后名列第15
- 简述线程死锁的产生
- android出现注: 某些输入文件使用或覆盖了已过时的 API。 注: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。 注: 某些输入文件使用了未经检查或不安全的操作。 注
- 2015年北京大学软件工程学科优秀大学生夏令营上机考试---B:整数奇偶排序