P230. 寻找数组的平衡点

leetcode 724 lintcode 1068 数组 讨论

温馨提示:您没有权限查看当前视频。 立即购买观看视频

描述

这个题目说的是,给你一个整数数组,你要找到这个数组的平衡点并返回它的下标。

数组的平衡点定义为这样一个元素,它左边子数组的元素之和等于它右边子数组的元素之和。如果数组中存在多个平衡点,则返回最左侧平衡点的下标;而如果数组中不存在平衡点,则返回 -1。

比如说,给你的数组是:

1, 4, 2, 8, 1, 6

这个数组的平衡点是数字 8,它左边的元素之和与右边的元素之和都等于 7。因此,你要返回数字 8 对应的下标,也就是 3。

再比如说,给你的数组是:

1, -3, 3

这个数组的平衡点是数字 1。1 左边没有元素,因此把求和结果看作 0。1 右边的两个元素相加也等于 0。因此,你要返回数字 1 对应的下标,也就是 0。

关于 AlgoCasts

AlgoCasts 旨在用心做好每一个算法讲解视频。每个视频包含两个部分:题目的剖析讲解以及编码,力求在讲解清楚到位的基础上,尽可能地保持视频精简短小,让大家可以在碎片时间里进行学习,并收获这些算法题背后的思想与乐趣。