侧边栏壁纸
博主头像
小顺

一帆风顺 ⛵️⛵️⛵️

  • 累计撰写 70 篇文章
  • 累计创建 0 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

寻找数组的中心索引

小顺
2022-12-12 / 0 评论 / 0 点赞 / 39 阅读 / 173 字
package com.apesblog.day_20221212;

/**
 * @author ZhangYuShun
 * @since 2022/12/12
 * 寻找数组的中心索引
 *
 * 数组中某一个下标,左右两边的元素之后相等,该下标即为中心索引
 * 思路:先统计出整个数组的总和,然后从第一个元素开始叠加
 * 总和递减当前元素,叠加递增当前元素,直到两个值相等
 */
public class PivotIndex {

    public static void main(String[] args) {
        int[] nums = {3, 1, 1, 1, 2, 3};
        int index = pivotIndex(nums);
        System.out.println(index);
    }

    private static int pivotIndex(int[] nums) {
        int sum = 0;
        for (int num : nums) {
            sum = sum + num;
        }
        int add = 0;
        int sub = sum;
        for (int i = 0; i < nums.length; i++) {
            add = add + nums[i];
            if (add == sub) {
                return i;
            }
            sub = sub - nums[i];
        }
        return -1;
    }
}

image-20221212162205400

0

评论区