Problem Description 给定n(1<=n<=100000)个整数(可能为负数)组成的序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的子段和的最大值.当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+-+a[j]},1<=i<=j<=n. 例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,13,-5,-2)时,最大子段和为…
头文件 #define LIST_MAX_SIZE 5#define LISTINCREMENT 2#include<assert.h>#include<string>template<class type >//<>中是模板参数在用模板类的时候必须给出,可以不止一个且不能为空,class和typename的作用是一样的 其后的形参可以声明数据class sqlist{protected: type *s;//顺序表起始地址; int listsize;//…
一.顺序表 1.线性表 //java顺序表的实现,如ArrayList就是用线性表实现的,优点是查找快,缺点是添加或删除要移动很多元素,速度慢 public class SequenceList { private int MAXLENGTH;//顺序表大小 private int count;//线性表存在数据个数 private Data[] data; //数据储存 private static class Data{ String name; int stuNo; int scores;…