算法(17)定义一个整数数组,找出连续3个元素之和是最大的,并输出这三个元素。

写在前面: 我是 扬帆向海,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。

这博客是对自己学习的一点点总结及记录,如果您对 Java算法 感兴趣,可以关注我的动态,我们一起学习。

用知识改变命运,让我们的家人过上更好的生活

今天刷算法题,碰到了一个公司的笔试小算法。

题目是:定义一个整数数组,找出连续3个元素之和是最大的,并输出这三个元素。

示例:

输入:2 ,-6 ,3,-9 ,5,-10, 8
输出: 3,-9,15

在此给出我的求解过程,仅供参考!

代码实现

public class ArrayTakeNum {

    public static void main(String[] args) {
        int[] array = {2, -6, 3, -9, 15, -10, 8};
        System.out.println("定义的整数数组为: " + Arrays.toString(array));
        //定义一个数组用于存储连续三个数字的和
        int[] temp = new int[4];
        for (int i = 0; i < 4; i++) {
            int s = array[i] + array[i + 1] + array[i + 2];
            temp[i] = s;
        }
        int max = temp[0];
        int index = 0;
        for (int i = 0; i < temp.length; i++) {
            if (max < temp[i]) {
                max = temp[i];
                index = i;
            }
        }
        System.out.println("连续3个元素之和是最大的三个数分别是:" +
                array[index] + "," + array[index + 1] + "," + array[index + 2]);
    }
}

测试结果:

定义的整数数组为: [2, -6, 3, -9, 15, -10, 8]
连续3个元素之和是最大的三个数分别是:3,-9,15
发布了75 篇原创文章 · 获赞 868 · 访问量 7万+

猜你喜欢

转载自blog.csdn.net/weixin_43570367/article/details/103944328