zoukankan      html  css  js  c++  java
  • 线性最大子数组的求法

    成员:李小超,马国彬

    今天(3月10号),王老师给我们留了一个子数组,求最大值的方法,今天上午的时候求出来了时间复杂度为n方的,今天晚上我和我的搭档马国彬同学,经过一晚上自习的时间终于做出来了。首先我们经过很多讨论,开始的时候有一点想法,可是做了一半就不对了,我的想法是先判断第一个数,然后加上后面的数进行比较max看看谁的比较大,大的给max,然后i++向后进展,其实思路很简单,只不过实现有点问题,这个i的移动特别不好控制,容易乱。我们写的代码如下:

    // 最大子数组.cpp : Defines the entry point for the console application.

    //

     

    #include "stdafx.h"

     

    int main(int argc, char* argv[])

    {

        int a[10]={5,-1,3,2,-10,2,6,3,-1,-2};

    int i,max;

    max=a[0];

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

    {

    if(a[i]>max)

    max=a[i];

    }

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

    {

    if(a[i]>0)

    {

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

    if(max<a[i+1])

    {

    max=a[i+1];

    }

    if(a[i+1]<0)

    {

    i++;

    max=a[i+1];

    }

    }

    }

    printf("%d ",max);

    return 0;

    }

    上面是我前面算的,马国彬后面算的,思想都一样。 这些都是我们俩个经过不懈努力做出来的。以上是我们的想法,有什么不足之处,还望指正,谢谢!

  • 相关阅读:
    shell 脚本语法
    discuz pre_forum_postposition表说明
    PHP调试工具Xdebug安装配置教程
    检查用户头像状态的脚本
    PHP 性能监测
    Mysql 索引优化
    MySQL主从复制配置
    vue mixin 混入
    vue渲染方式:render和template的区别
    vue自定义指令directive Vue.directive() directives
  • 原文地址:https://www.cnblogs.com/lixiaochao/p/3592890.html
Copyright © 2011-2022 走看看