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

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

这博客是对自己学习的一点点总结及记录,如果您对 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]);
    }
}

测试结果:

在这里插入图片描述


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

发布了81 篇原创文章 · 获赞 1252 · 访问量 18万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 精致技术 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览