leetcode 654 Maximum Binary Tree C++
来源:互联网 发布:merge算法 c语言 编辑:程序博客网 时间:2024/05/21 10:37
这个题第一想法就是递归,然后就写下了下面的代码。分成两部分,然后分别对两部分递归。
TreeNode* util(vector<int>& nums, int left, int right) { if (left > right) return NULL; int max = INT_MIN; int index = right; for (int i = left ; i <= right ; i++) { if (nums[i] > max) { max = nums[i]; index = i; } } TreeNode *root = new TreeNode(nums[index]); root->left = util(nums, left, index - 1); root->right = util(nums, index + 1, right); return root; } TreeNode* constructMaximumBinaryTree(vector<int>& nums) { return util(nums, 0, nums.size() - 1); }
但是这个算法效率有些低下,高效率的可以去看discuss。
阅读全文
0 0
- [C]LeetCode:Maximum Depth of Binary Tree
- LeetCode Maximum Binary Tree
- leetcode 654 Maximum Binary Tree C++
- LeetCode 654 Maximum Binary Tree(递归)
- LeetCode#654 Maximum Binary Tree (week12)
- leetcode 654. Maximum Binary Tree
- 【LeetCode】654. Maximum Binary Tree
- [LeetCode]654. Maximum Binary Tree
- leetcode 654. Maximum Binary Tree
- leetcode 654. Maximum Binary Tree
- Leetcode: 654. Maximum Binary Tree
- LeetCode 654. Maximum Binary Tree
- [LeetCode] 654. Maximum Binary Tree
- [leetcode] 654. Maximum Binary Tree
- [LeetCode] 654. Maximum Binary Tree
- [C++]LeetCode: 29 Maximum Depth of Binary Tree
- 【leetcode c++】104 Maximum Depth of Binary Tree
- [leetcode-104]Maximum Depth of Binary Tree(c)
- C++ 二维数组与指针
- 随机算法 —— 模拟退火
- 如何给cc debugger烧录固件?
- javascript函数的参数
- 设计模式-结构型模式的要点/结构/适用范围
- leetcode 654 Maximum Binary Tree C++
- 【Ubuntu-Tensorflow】TF1.0到TF1.2出现“Key LSTM/basic_lstm_cell/bias not found in checkpoin”问题
- hadoop自定义排序对比器和分组对比器
- Struts2创建项目5--(传值)valueStack讲解
- String equals方法和==的区别
- [翻译]MapReduce: Simplified Data Processing on Large Clusters
- 树- path sum
- 凯哥
- MFC之ODBC实现对Excel文件读写