刷654.最大二叉树的时候遇到的报错:
引发错误的代码:
class Solution {
public:
TreeNode* constructMaximumBinaryTree(vector<int>& nums) {
//终止条件:数组内没有没遍历到的元素了,也就是切出来的左区间和右区间都是NULL
//也可以写成,nums数组大小==1,也就是到了最后一个叶子节点
if(nums.size()==1){
return new TreeNode(nums[0]); //如果只有一个元素,就返回这个节点作为根节点
}
//本题目的要求(提示)里面写了nums数组大小>=1,所以不用考虑本来就是空的情况
//找最大值及其下标
int maxValue=INT_MIN;
int index;
int maxIndex;
for(index=0;index<nums.size();index++){
if(nums[index]>maxValue){
maxValue = nums[index];//最大值
maxIndex = index;//最大值的下标
}