• 环数组求最大子数组的和


        在结对开发的过程中,每个人分担不同的任务,由于我们在学习阶段,所以我自己也编写了一段小程序,但是总是缺少一个限制条件,让这段代码停下来,下面这段代码是我的同伴编写的,我只是做了一个测试。

    #include<iostream>
    using namespace std;
    
    void main()
    {
        int length;   //数组的个数
        int n;       //数组变化后的长度
        cout<<"请输入数组元素个数:"<<endl;
        cin>>length;
        n=2*length;    
    
        int *a=new int[n];  //定义数组
        cout<<"请输入数组的元素:"<<endl;
        for(int i=0;i<length;i++)// for循环依次输入数组的元素
        {
            cin>>a[i];
        }
        int max=a[0];   // 首先定义max并且赋予第一个数组中的元素值
        int s=0;   //定义s值,s值为数组元素之和并且与max值比较
        for(int i=0;i<length;i++)
        {
            s=0;    
            for(int j=i;j<length+i;j++)
            {
                s=s+a[j];
                if(s>max)
                {
                    max=s;
                }    
            }
            a[length+i]=a[i];
        }
        cout<<endl;
        cout<<"最大子数组的和为:"<<endl;
        cout<<max<<endl;
    }






    在上面三个截图中我针对5个元素做了测试,第一个是首尾加起来是最大数组,第二个是数组之内就能完成求最大字数组,第三个是负数特别多的时候的一个结果。
    功能不是太完善。
  • 相关阅读:
    module模块和包(十七)
    swap(十六)
    文件系统
    Confluence 6 管理协同编辑
    Confluence 6 管理协同编辑
    Confluence 6 数据收集隐私策略
    Confluence 6 修改警告的阈值和表现
    Confluence 6 警告的类型
    Confluence 6 诊断
    Confluence 6 垃圾收集性能问题
  • 原文地址:https://www.cnblogs.com/jump/p/4430547.html
Copyright © 2020-2023  润新知