【剑指offer】07 重建二叉树
题目描述
题解
- 函数的变量初始化
Definition for a binary tree node.
struct TreeNode {
int val;
TreeNode *left;
TreeNode *right;
TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};
C++中可以将函数写在结构体中,类似于构造函数,直接使用TreeNode(x)可以初始化为val=x,left=null,right=null的结点。对于函数变量初始化来说,可以先将初始化的变量全部写在{}外。 - 利用哈希表unordered_map来映射根结点到中序遍历序列的序号,降低时间复杂度到O(n),只需要查表即可。
- 算法:1. 递归 2. 迭代