zoukankan      html  css  js  c++  java
  • Palindrome Construct Binary Tree from Preorder and Inorder Traversal

    // 156ms 过大的
    1
    /** 2 * Definition for binary tree 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode(int x) : val(x), left(NULL), right(NULL) {} 8 * }; 9 */ 10 class Solution { 11 public: 12 13 TreeNode *buildTree(vector<int> &preorder,int pb,int pe, vector<int> &inorder,int ib,int ie) 14 { 15 TreeNode *root=new TreeNode(0); 16 root->val=preorder[pb]; 17 18 vector<int>::iterator proot=find(inorder.begin(),inorder.end(),root->val); 19 int pos=proot-inorder.begin(); 20 21 int leftLen=pos-ib; 22 int rightLen=ie-pos; 23 24 if(leftLen>0) 25 root->left=buildTree(preorder,pb+1,pb+leftLen,inorder,ib,pos-1); 26 if(rightLen>0) 27 root->right=buildTree(preorder,pb+leftLen+1,pe,inorder,pos+1,ie); 28 return root; 29 } 30 31 TreeNode *buildTree(vector<int> &preorder, vector<int> &inorder) { 32 // Start typing your C/C++ solution below 33 // DO NOT write int main() function 34 if(preorder.size()==0) 35 return NULL; 36 return buildTree(preorder,0,preorder.size()-1,inorder,0,preorder.size()-1); 37 } 38 };
  • 相关阅读:
    extjs tabpanel动态添加panel
    日期处理工具类
    POI导入导出Excel
    生成流水号
    计划排产系统
    3Dflash 图表xml数据封装
    使用GZIP动态压缩Extjs
    码农行业的薪水一览,如有雷同纯属巧合
    我的技术从今天开始开通啦~~~
    关于腾讯QQ
  • 原文地址:https://www.cnblogs.com/mengqingzhong/p/3116715.html
Copyright © 2011-2022 走看看