zoukankan      html  css  js  c++  java
  • 最大子数组的和首尾相接(3)

    #include<iostream>

    using namespace std;

    #define Nu 5

    int main()

    {

        int a[Nu]={1,2,3,-1,4};

        cout<<"随机产生数组为:";

        for(int i=0;i<Nu;i++)

            cout<<a[i]<<"  ";

        cout<<endl;

        int sum=a[0],b=a[0],x=0,y=0;

        int    j=1;

        while((j-x<Nu)&&x<Nu)  

        {  

            if(b>=0)          

            {

                b=a[j%Nu];

                if(j<Nu)

                    x=j;

                else

                    break;

            }  

            else  

                b+=a[j%Nu];  

            if(sum>=b)  

            { sum=b;y=j;}  

            j++;

        } 

        sum=0;

        for(int i=y+1;i<x+Nu;i++)

            sum+=a[i%Nu];

        int z=y%Nu;

        if(x>z)

        {

            j=1;sum=a[0];b=a[0];x=0;y=0;

            while(j<Nu)  

            {  

                if(b<0)          

                { b=a[j%Nu];x=j;}  

                else  

                    b+=a[j%Nu];  

                if(sum<=b)  

                { sum=b;y=j;}  

                j++;

            } 

            cout<<x<<endl<<y<<endl;

            cout<<"相应子数组为:";

            for(int i=x;i<=y;i++)

                cout<<a[i]<<" ";

            cout<<endl;

        }

        else

        {

            cout<<x<<endl<<y<<endl;

            cout<<"相应子数组为:";

            for(int i=y+1;i<x+Nu;i++)

                cout<<a[i%Nu]<<" ";

            cout<<endl;

        }

        

        

        cout<<"相邻子数组最大和为:"<<sum<<endl;

        

        

        return 0;

    }

    设计思路:介于第一次与第二次都有类似的问题,于是将两次的代码结合,互相弥补。

    后感:本来觉得很简单,后来测试发现问题很多,这个可能还有错,继续努力吧

  • 相关阅读:
    pytorch的函数中的group参数的作用
    pytorch的函数中的dilation参数的作用
    resnet18全连接层改成卷积层
    Pytorch实现UNet例子学习
    MyEclipse中出现Address already in use:JVM_Bind:8080
    为SQL数据库创建登录名和密码
    集合体系
    排序算法及其java实现
    java泛型通配符?
    Arrays.asList的用法
  • 原文地址:https://www.cnblogs.com/xiaowumao/p/4433067.html
Copyright © 2011-2022 走看看