关闭

最大子序列和的PHP算法

标签: php算法
184人阅读 评论(0) 收藏 举报
分类:
$arr = [-8 , 4 ,55 , -5 , 26 , 1 , -24 , 6,,-7];
$len = count($arr);
$b =[];
$b[0] = $arr[0];
$max = $arr[0] >0 ?$arr[0]:0;
$start_x = 0;
for($i=1;$i<$len;$i++)
{
    if(($b[$i-1] + $arr[$i]) > $arr[$i]){
        $b[$i] = $b[$i-1] + $arr[$i];
    }else{
        $b[$i] = $arr[$i];
        $start_x = $i; ;
    }    
    if($max < $b[$i]) {    
        $max = $b[$i];    
        $end_x = $i;
    }
}
print '最大子和: '.$max_sum."\n";
print '开始位置: '.$start_x."\t";
print '结束位置: '.$end_x."\n";
print '最大子序列:';
for($i=$start_x;$i<=$end_x;$i++){
    print $arr[$i].' ';
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:5907次
    • 积分:139
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:3篇
    • 译文:0篇
    • 评论:0条
    文章分类