摘要: 下面的代码,如果存在多个最大的子序列,则只返回最前面的。如果数组全为负数,比如-3, -2, -1, -8, 程序返回 -1,起始,终止位置都是2int MaxNumber(int* A){ int nStart = A[0]; int nAll = A[0]; int tmpStart = 1; int si = 1 , ei = 1; for( int i = 1; i < n; i++) { if (nStart < 0) { nStart = 0 ; tmpStart = i+1; } nStart += A[i]; if (nStart > nAll) { 阅读全文
posted @ 2011-02-18 13:53 kinghuhua 阅读(212) 评论(0) 推荐(0) 编辑