• 《返回一个整数数组中最大子数组的和》


    设计思路:

    1.首先计算出以第一个数为开头的所有子数组之和。

    2.同时求出其中最大的子数据之和,并存入数组中。

    3.依次这样计算,直到求完最后一个。

    4.再将存放子数组之和的数组进行比较,输出最大的子数组之和。

    代码:

    //软件工程四 课堂练习 康娜
    #include<iostream>
    using namespace std;
    
    void main()
    {
        int a=0,b=0,i,j,m=0,num[10],sym,r[10]={0,0,0,0,0,0,0,0,0,0};
        
        cout<<"请输入数组中元素的取值范围:(a<b)";
        cin>>a>>b;
    
        for(i=0;i<10;i++)
        {
            sym=rand()%2;
            if(sym==0)
                num[i]=rand()%(b-a)+a;
            else
                num[i]=-(rand()%(b-a)+a);
        }
    
        cout<<"获得随机数组为"<<endl;
        for(i=0;i<10;i++)
        {
            cout<<num[i]<<"   ";
        }
        for(i=0;i<10;i++)
        {
            m=num[i];
            int sum=0;
            for(j=i;j<10;j++)
            {
                sum=sum+num[j];
                if(sum>m)
                {
                    m=sum;
                }
            }
            r[i]=m;
        }
        m=r[0];
        for(i=0;i<10;i++)
        {
            if(r[i]>=m)
                m=r[i];
        }
        cout<<endl;
        cout<<"最大的子数组之和为:"<<m<<endl;
    
    }

    程序效果截图:

    项目计划日志:

    时间记录日志:

    缺陷记录日志:

     

  • 相关阅读:
    Javascript之in操作符的用法
    auguements实参对象的数组化
    jQuery多库共存问题解决方法
    JS框架设计之命名空间设计一种子模块
    WebStorm 快键键
    Sington单例模式(创建型模式)
    Asp.Net Cache缓存技术学习
    跨域
    webuploader跨域上传
    BuiltWith
  • 原文地址:https://www.cnblogs.com/lottie021/p/4359413.html
Copyright © 2020-2023  润新知