最大子数组之和(线性时间复杂度,C语言实现)
来源:互联网 发布:2017年淘宝销量排行榜 编辑:程序博客网 时间:2024/05/21 10:53
#include <stdio.h>#include <stdlib.h>#define NUM 7void max_subarray(int *);int main(){int A[NUM] = {-2,5,3,-6,4,-8,6};for (int i = 0; i < NUM; i++){printf("%d ", A[i]);}printf("\n");max_subarray(A);return 0;}void max_subarray(int A[]){int max = -30;//当数组值全为负值时,max的初始化值必须小于其最大值。int temp = -1;//初始化值小于0。int s = 0, e = 0, p = 0;//s记录开始,e记录结束位置。(记录的是数组下标)for (int j = 0; j < NUM; j++){if (temp < 0){temp = 0;p = j;}temp += A[j];if (temp > max){max = temp;s = p;e = j;}}printf("%d %d %d\n", s, e, max);}
0 0
- 最大子数组之和(线性时间复杂度,C语言实现)
- 算法导论(最大子数组问题-线性时间复杂度算法分析与实现)
- 算法导论-最大子数组问题-线性时间复杂度算法分析与实现
- C语言实现求数组的子数组之和的最大值并求出最大子数组位置
- (C#)找出数组中最大子序列之和,分别以O(N^2),O(NlogN),O(N) 这3种时间复杂度求解
- 求一个整型数组的最大和的子数列,要求时间复杂度为线性的
- 最大子数组之和
- 最大子数组之和
- 最大子数组之和
- 最大子数组之和
- 线性时间解决最大子数组问题
- 线性时间的最大子数组
- [java实现]找一个数组的最大和的连续子数组(时间复杂度 O(n))
- [java实现]找一个数组的最大和的连续子数组(时间复杂度 O(n))
- 最大子数组(C语言)
- 最大子数组之和(动态规划)
- 最大子数组--线性非递归实现
- 最大M子段和 辅助数组降低时间复杂度
- Git学习教程(一):git简介
- 几个时间复杂性类(NP/BPP/RP/ZPP)
- 冯英健:大网络营销与融合化网络营销
- 关于js的DOM
- mac下加速ndk代码编译速度
- 最大子数组之和(线性时间复杂度,C语言实现)
- 这些年,都干了些什么
- Android系统中UID
- javascript字符串对象的常用属性和方法
- 苹果手机照片删除怎么恢复
- windows下使用solr--安装
- Git学习教程(二):配置和初始化
- 父类、构造函数、成员对象的调用时机
- Java并发编程1-原子性和可见性