小言_互联网的博客

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

439人阅读  评论(0)

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

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

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

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

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

示例:

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

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

代码实现

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[array.length - 2];
        for (int i = 0; i < temp.length; 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]);
    }
}

测试结果:


由于水平有限,本博客难免有不足,恳请各位大佬不吝赐教!


转载:https://blog.csdn.net/weixin_43570367/article/details/103944328
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场