查找 Array- C 程序的枢轴



我必须找到给定数组的枢轴。请告诉我这个实现有什么问题。它始终返回 -1。

int leftsum(int *nums, int index)
{
    int lsum=0;
        for(int i=0;i<index;i++)
            lsum += nums[i];
    return lsum;
}
int rightsum(int *nums, int index,int numsSize)
{
    int rsum=0;
    for(int i=index+1;i<=numsSize;i++)
        rsum += nums[i];
    return rsum;
}
int pivotIndex(int* nums, int numsSize) 
{ 
   for (int i=1;i<numsSize;i++)
   {
      if(leftsum(nums,i) == rightsum(nums,i,numsSize))  
         return i;
   }

   return -1;
}

这是开始学习调试的好机会。

int rightsum(int *nums, int index,int numsSize) {
    int rsum=0;
    for(int i=index+1;i<=numsSize;i++)
        rsum += nums[i];
    return rsum; }

在这里,for循环中的条件应该是i<numsSize而不是i<=numsSize

相关内容

最新更新