c - 寻找 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
推荐阅读
- r - 如何在 R (tsDyn) 中为 VAR 模型设置参数限制
- javascript - 正则表达式与括号完全匹配
- html - 未能在 Tailwind CSS 表中进行换行
- python - 只有当鼠标悬停在游戏上时角色才会转身
- r - 从 R 中的三元网格点获取三角形网格
- javascript - (盖茨比)如何添加溢出:用点击事件隐藏?
- node.js - 浏览器会一直加载网站的缓存版本,除非进行硬刷新
- scala - scala spark rdd 错误:java.lang.ClassCastException:无法分配 java.lang.invoke.SerializedLambda 的实例
- sql - 访问查找向导多值
- reactjs - 将状态作为道具传递给子组件时,无法对未安装的组件执行 React 状态更新