1.设计思路:

(1).先定义一个求最大值的函数,然后在子程序中调用它。

(2).实现数组转换,每进行一次循环,(循环次数不能超出数组长度)数组里的数就前进一位,然后赋值给一个新数组。

(3).求数组中所有子数组的和,再比较得出最大值。

2.程序代码

#include<iostream>
using namespace std;

int main()
{
  int A[100], B[100], C[100];
  int max(int A, int B);
  int length = 0;
  int sumOfArray;
  int sum = 0;
  cout << "请输入数组:"<<endl;
  for (length = 0;;)
  {
    cin >> A[length];
    length++;
    if (getchar() == '\n')
    {
      break;
    }
  }

  for (int i = 0; i < length; i++)
  {
    for (int j = 0; j < length; j++)
    {

      if ((i + j) > (length-1))
      {
        B[j] = A[i + j - length];
      }
      else
      {
        B[j] = A[j + i];
      }
    }
    sumOfArray = B[0];
    for (int k = 1; k < length; k++)
    {
      sum = max(sum, sumOfArray);
      sumOfArray = max((sumOfArray + B[k]), B[k]);

    }
    sumOfArray = max(sum, sumOfArray);
    C[i] = sumOfArray;
  }
  int maxNum = C[0];
  for (i = 0; i < length; i++)
  {
    if (C[i] > maxNum)
    {
      maxNum = C[i];
    }
  }

  cout << "这个循环整数数组的子数组之和的最大值为:" << maxNum << endl;
return 0;
}
int max(int A, int B)
{

  if (A > B)
  {
    return A;
  }
  else
  {
    return B;
  }
}

3.运行结果:

转载于:https://www.cnblogs.com/gaoemm/p/9954331.html

求环形数组的最大子数组的和相关推荐

  1. 返回一个整数数组中最大子数组的和---环形数组

    一.题目要求 题目:返回一个整数数组中最大子数组的和. 要求: 输入一个整形数组,数组里有正数也有负数. 数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. 如果数组A[0]--A[j- ...

  2. 求二维数组中最大子数组的和

    任国庆  张博 之前我们讨论了在一维数组中求最大子数组的和,在此基础上我们开始讨论二维数组的最大子数组. 求二维数组的最大子数组思想是建立在以为数组.首先将数组的第一列看成一个一维数组,找到该列的最大 ...

  3. 结对开发2(求二维数组的最大子数组和)

    一,题目要求: 输入一个二维数组,求出此二维数组的最大子数组和. 二,设计思路: 利用for循环进行遍历,求出数组中每一个子数组的和,最终求出这些子数组的最大的一个值.程序中利用了调用函数,被调函数分 ...

  4. [经典面试题][淘宝]求首尾相连数组的最大子数组和

    题目 给定一个由N个整数元素组成的数组arr,数组中有正数也有负数,这个数组不是一般的数组,其首尾是相连的.数组中一个或多个连续元素可以组成一个子数组,其中存在这样的子数组arr[i],-arr[n- ...

  5. 求二维整数数组中最大子数组的和(结对作业)

    题目:返回一个二维整数数组中最大子数组的和 要求:(1)输入一个二维整形数组,数组里有正数也有负数. (2)二维数组中连续的一个子矩阵组成一个子数组,每个子数组都有一个和. (3)求所有子数组的和最大 ...

  6. 求一个有一千个元素的整数数组的最大子数组的和

    求一个有一千个元素的整数数组的最大子数组的和 小组成员:司宇,滕达 设计过程: 设计界面: 在c#界面添加一些控件. 程序设计: 1.使用for循环和取随机数的函数产生一千个随机数并且将其赋值到数组中 ...

  7. 课堂练习:返回一个二维数组中最大子数组的和

    1.题目: 返回一个二维数组中最大子数组的和. 2.要求: 输入一个二维整形数组,数组里有正数也有负数. 二维数组首尾相接,象个一条首尾相接带子一样. 数组中连续的一个或多个整数组成一个子数组,每个子 ...

  8. 结对开发——返回一个整数数组中最大子数组的和 (首尾相接版)

    一.题目及题目要求 题目:返回一个整数数组中最大子数组的和. 要求: (1)输入一个整形数组,数组里有正数也有负数. (2)数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和. (3)如果 ...

  9. 返回一个首尾相接的二维整数数组中最大子数组的和

    题目: ·返回一个二维整数数组中最大子数组的和. 要求: ·输入一个二维整形数组,数组里有正数也有负数. ·二维数组首尾相接,象个一条首尾相接带子一样. ·数组中连续的一个或多个整数组成一个子数组,每 ...

  10. 返回一个循环数组中最大子数组的和

    设计思路 首先利用rand()函数随机产生一个一维数组,数组长度通过宏定义来控制.求首尾连接的一维数组的最大子数组的和我的思路是:循环N次(N是数组的长度)依次检测数组的最大子数组的和再比较大小,保留 ...

最新文章

  1. AI伪装目标检测:让变色龙现出原形!
  2. oracle时间格式要注意的问题
  3. Fluentd初探 简介与安装
  4. aliplayer 手机全屏控件不显示_Flutter 强大的MediaQuery控件
  5. C经典面试题之深入解析字符串拷贝的sprintf、strcpy和memcpy使用与区别
  6. stm32f4有重映射么_STM32管教复用与重映射关系
  7. nltk——文本分类
  8. C# try-catch-finally 语句异常的类型
  9. android系统启动自动启动不了,怎么在android系统开机就运行某个应用
  10. 基于WiEngine游戏引擎的Sample
  11. 音视频入门系列-字幕篇(SSA ASS)
  12. TCPDF微软雅黑字体
  13. 英语测试用什么软件有哪些,学习英语的软件哪个好 什么比较好用
  14. 地铁工程安全生产预警系统价格
  15. 计算机主机开机为什么显示器不开,电脑开机后显示器不亮怎么办?电脑开机后显示器没反应的解决办法...
  16. 计算机图形学学习笔记(4.1)画线算法
  17. BAT薪资大揭底:AI程序员80万太少!程序员薪资的天花板在哪?
  18. 平面设计中的网格系统pdf_实例讲解:平面设计中的网格系统,怎么用?
  19. 深圳宝安周边公司出行团建户外一日游
  20. java简易计算机(用栈实现中缀转后缀,计算后缀表达式)

热门文章

  1. C++中对象数组的构造函数和析构函数调用
  2. OVS DPDK--数据结构关系(七)
  3. OVS DPDK--Ring端口配置(五)
  4. python webshell_python脚本实现查找webshell的方法
  5. python中panel不接受参数_Python基础之只接收关键字参数的函数
  6. Linux中如何杀掉僵尸进程
  7. EXC_BAO_ACCESS引起的奔溃信息
  8. 数据数字mongodb 模糊查询以及$type使用
  9. linux 其他常用命令
  10. 【转载】从多项式曲线拟合到模式识别的相关概念