码迷,mamicode.com
首页 > 其他好文 > 详细

首次结对开发

时间:2015-03-18 19:52:26      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

题目:返回一个整数数组中最大子数组的和。

要求:
输入一个整形数组,数组里有正数也有负数。
数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。
求所有子数组的和的最大值。要求时间复杂度为O(n)。
结对编程要求:
两人结对完成编程任务。
一人主要负责程序分析,代码编程。
一人负责代码复审和代码测试计划。

结对成员:付东、岳竞一

一、解决思路

      首先,分任务,付东负责程序分析,代码编程。岳竞一负责代码复审和代码复试计划。

      其次,商量题目的意思,要实现的内容,编程的思路

      然后,编写代码,复审和测试

     最后,编写博客,道出编程过程遇到的困难和结对开发的感悟

二、实验代码

#include<iostream.h>

int main()

{

  int a[1000];

  int max;    

  int sum[1000];  

  int i;  //int n;  

  int j;  //cout<<"输入数组成员个数:"; // cin>>n;

  cout<<"输入5元数组:";    

  for(i=0;i<5;i++)

     {

     cin>>a[i];

      }

    for(i=0;i<5;i++)

    {

     sum[i]=a[i];

     }

    for(i=0;i<4;i++)

   {

     sum[5+i]=a[i]+a[i+1];

   }

   for(i=0;i<3;i++)

   {

      sum[9+i]=a[i]+a[i+1]+a[i+2];

    }

   for(i=0;i<2;i++)

   {

     sum[12+i]=a[i]+a[i+1]+a[i+2]+a[i+3];

    }

    for(i=0;i<1;i++)

    {

         sum[14+i]=a[i]+a[i+1]+a[i+2]+a[i+3]+a[i+4];

     }

         max=sum[0];   

    for(i=0;i<15;i++)

    {

     if(sum[i]>max)

      {

          max=sum[i];

        j=i;

     }

    }

   cout<<"子数组和最大为:"<<"sum["<<j<<"]="<<max<<endl;

  return 0; 

}

技术分享

三、实验心得

      首次进行结对训练,受益颇深。

      自己一个人编程的时候容易理解错题目,有的地方可能想不到,两个人一起,这种情况就基本不会发生了,正所谓众人拾柴火焰高,互相弥补,,取长补短,开阔思路。

  例如,刚开始的时候我俩就对题目进行了激烈的争辩,他理解的确定组数,我认为是任意分组,最后经过对题目的多次确认,应该是任意分组,并且对每组都进行求和,然后比较大小,输出最大的那组子数组的和。当然了,由于底子比较薄弱,实现的功能还不是特别好,

  这次的结对编程,让我相信了1+1>2的理论!

四、工作照

技术分享

     

首次结对开发

标签:

原文地址:http://www.cnblogs.com/yue3475975/p/4347890.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!