php算法题---连续子数组的最大和

一、总结

一句话总结:

重要:一定要本机调试过了再提交代码,因为很容易出现考虑不周的情况,或者修改了之后没有考虑修改的这部分
利用空间来换时间,或者利用空间来换算法复杂度是很好的方式

二、内容在总结中

1、题目描述

HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的和,你会不会被他忽悠住?(子向量的长度至少是1)
 

2、php代码

<?php

function FindGreatestSumOfSubArray($array)
{
// write code here
//用数组保存中间结果
$sum=[];
$sum[0]=0;
$index=1;
$temp_sum=0;
foreach($array as $key=>$val){
$temp_sum+=$val;
$sum[$index]=$temp_sum;
$index++;
}
$max=-99999999;
for($i=0;$i<count($sum)-1;$i++){
for($j=$i+1;$j<=count($sum)-1;$j++){
if($sum[$j]-$sum[$i]>$max) $max=$sum[$j]-$sum[$i];
}
}
return $max;
}
 

最新文章

  1. extern引发的闹剧
  2. codeforces 45C C. Dancing Lessons STL
  3. Discuz &amp; UCenter 修改手记 - 2014.12.19
  4. [iOS翻译]《iOS 7 Programming Pushing the Limits》系列:你可能不知道的Objective-C技巧
  5. 【Java 基础篇】【第七课】组合
  6. Quartz简单使用
  7. debian 安装 android studio 环境
  8. (转载)RESTful架构风格下的4大常见安全问题
  9. 《java入门第一季》之Calendar类小案例获取任意二月天数
  10. python里面的xlrd模块详解(一)
  11. GeoHash(Java实现)
  12. 【English】20190306
  13. silverlight用Encoding.UTF8读取shape文件的中文属性值 出现乱码
  14. Ubuntu 14.04服务器配置 (1) 安装和配置
  15. 话说extern和static
  16. [UE4]圆形的动态材质,使用VectorParameter、Get Dynamic Material、Set Vector Parameter Value
  17. CentOS 7配置nginx-1.13.10支持http/2和Server Push
  18. CyberArticle(eLib电子图书馆)网文快捕
  19. matlab M文件分析工具使用(Code Analyzer and Profiler)
  20. 获取Activity中得到焦点的EditText

热门文章

  1. python 对象的删除
  2. 10_PAE_非PAE
  3. 从零开始搭建系统1.3——Tomcat安装及配置
  4. ACM-ICPC 训练平台 &amp; 比赛 分析
  5. linux命令系列-tar(打包压缩)
  6. 虚树(树形dp套路)模板——bzoj2286
  7. ionic-CSS:ionic select
  8. jvm-多线程
  9. Centos 6 &amp; Centos 7安装rabbitmq3.6.15(单节点)
  10. Python实现全局变量的两个解决方法