zoukankan      html  css  js  c++  java
  • 最大连续子数组问题-homework-01

    1)先写我的 github 的介绍:

    github 的域名:http://www.github.com/zhuifeng1022

    登入 github 大概是下面的视图:

    按照助教的方法:我已经建好了代码仓库:命名为 homework-01

    代码仓库 homework-01 域名: http://www.github.com/zhuifeng1022/homework-01

    2)我选择的教材:中文版 代码大全 (第二版) 斯蒂夫·迈克康奈尔

    代码大全

    以下是第一次作业:

      我在课上想到的一种算法设计:

    #include<stdio.h>
    int max(int *a, int n)
    {
        int i, j;
        int high, low;
        int max, sum;
        for (i = 0, max = 0; i < n; i++)
            max = max + a[i];
        sum=0;
        for (i = 0; i < n; i++)
        {
            for(j = 0;j < n; j++)
            {
                for(sum = 0, low = i, high = j; low <= high; low++)
                {
                    sum = sum + a[low];
                    if(sum > max)
                        max = sum;
                }
            }
        }
        return max;
    }
    
    int main()
    {
        int a[999];
        int i, n;
        FILE *in;
        in = fopen("data.in", "r");
        fscanf(in, "%d", &n);
        for (i = 0; i < n; i++)
            fscanf(in, "%d", &a[i]);
        printf("%d
    ", max(a, n));
        fclose(in);
        return 0;
      
    }

    课后经过和同学的讨论,我又实现了另外一种O(n)的算法:

    #include<stdio.h>
    int max(int *a, int n)
    {
        int i;
        int max, sum;
        for (i = 0; i < n; i++) 
        {
            if (a[i] < max)
                max = a[i];
        }
        sum = 0;
        for (i = 0; i < n; i++) 
        {
            sum += a[i];
            if(sum > max)
                max = sum;
            if (sum < 0)
                sum = 0;
        }
        return max;
    }
    
    int main()
    {
        int a[999];
        int i, n;
        FILE *in;
        in = fopen("data.in", "r");
        fscanf(in, "%d", &n);
        for (i = 0; i < n; i++)
            fscanf(in, "%d", &a[i]);
        printf("%d
    ", max(a, n));
        fclose(in);
    }
  • 相关阅读:
    awk使用
    SQL VIEW(视图)
    crontab使用
    SecureCRT
    Python异常
    Python字符串
    Python字典,列表,元组
    Python路径
    vim插件
    Python类
  • 原文地址:https://www.cnblogs.com/jun1022/p/3330119.html
Copyright © 2011-2022 走看看