Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- using namespace std;
- struct TreeNode {
- int val;
- TreeNode *left;
- TreeNode *right;
- TreeNode() : val(0), left(nullptr), right(nullptr) {}
- TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
- TreeNode(int x, TreeNode *left, TreeNode *right)
- : val(x), left(left), right(right) {}
- };
- class Solution {
- public:
- void dfs(const TreeNode *root, vector<int> &res) {
- if (root == nullptr)
- return;
- dfs(root->left, res);
- res.push_back(root->val);
- dfs(root->right, res);
- }
- vector<int> inorderTraversal(TreeNode *root) {
- vector<int> res;
- dfs(root, res);
- return res;
- }
- };
- int main(void) {
- TreeNode *root = new TreeNode(1);
- root->right = new TreeNode(2);
- root->right->left = new TreeNode(3);
- for (const auto &i : Solution().inorderTraversal(root)) {
- cout << i << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement