要找到数组的中间索引,可以使用以下方法:
以下是一个示例代码(使用JavaScript语言):
function findMiddleIndex(nums) {
let totalSum = 0;
for (let i = 0; i < nums.length; i++) {
totalSum += nums[i];
}
let leftSum = 0;
for (let i = 0; i < nums.length; i++) {
if (leftSum === totalSum - leftSum - nums[i]) {
return i;
}
leftSum += nums[i];
}
return -1; // 没有找到中间索引
}
// 示例用法
const nums = [1, 2, 3, 4, 5, 6];
const middleIndex = findMiddleIndex(nums);
if (middleIndex !== -1) {
console.log("数组的中间索引为:" + middleIndex);
} else {
console.log("数组没有中间索引");
}
这个算法的时间复杂度为O(n),其中n是数组的长度。
领取专属 10元无门槛券
手把手带您无忧上云