这个属于基本功了,中序遍历,不讲了。
vector<int> inorderTraversal(TreeNode* root) {
stack<TreeNode*> stack;
vector<int> result;
while (1) {
if (root) {
stack.push(root);
root = root->left;
} else {
if (stack.empty()) break;
TreeNode *node = stack.top();
stack.pop();
result.push_back(node->val);
root = node->right;
}
}
return result;
}