建立二叉树
如对{1,2,2,3,3,null, null, 4,4}
输入{1,2,2,3,3,0,0,4,4}
struct TreeNode {
int val;
TreeNode *left;
TreeNode *right;
TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};
TreeNode* create(vector<int>vec,int num){
TreeNode* root = new TreeNode(vec[0]);
queue<TreeNode*> q;
q.push(root);
int i = 1;
while(i <= num){
TreeNode* t = q.front();
q.pop();
if(vec[i] > 0){
t->left = new TreeNode(vec[i]);
q.push(t->left);
}
else
t->left = NULL;
i++;
if(i<= num){
if(vec[i] > 0){
t->right = new TreeNode(vec[i]);
q.push(t->right);
}
else
t->right = NULL;
i++;
}
}
return root;
}