PHP實(shí)現(xiàn)求連續(xù)子數(shù)組最大和問題2種解決方法
本文實(shí)例講述了PHP實(shí)現(xiàn)求連續(xù)子數(shù)組最大和問題2種解決方法。分享給大家供大家參考,具體如下:
問題描述
求子數(shù)組的最大和
題目描述:
輸入一個(gè)整形數(shù)組,數(shù)組里有正數(shù)也有負(fù)數(shù)。
數(shù)組中連續(xù)的一個(gè)或多個(gè)整數(shù)組成一個(gè)子數(shù)組,每個(gè)子數(shù)組都有一個(gè)和。
求所有子數(shù)組的和的最大值。要求時(shí)間復(fù)雜度為O(n)。
關(guān)于連續(xù)子數(shù)組最大和這個(gè)問題,有兩種解法,一種是動態(tài)規(guī)劃
解法如下:
function getMaxSubSum($arr){ $curSum = $arr[0]; $maxSum = $arr[0]; for($i = 1; $i < count($arr); $i++){ if($curSum > 0) $curSum += $arr[$i]; else $curSum = $arr[$i]; if($curSum > $maxSum) $maxSum = $curSum; } return $maxSum; }
還有一種是掃描法
function getMaxSubSum($arr){ $curSum = 0; $maxSum = 0; for($i = 0; $i < count($arr); $i++ ){ $curSum += $arr[$i]; if($curSum <= 0) $curSum = 0; if($curSum > $maxSum) $maxSum = $curSum; } if($maxSum == 0){ $maxSum = $arr[0]; for($i = 1; $i < count($arr); $i++){ if($maxSum < $arr[$i] ) $maxSum = $arr[$i]; } } return $maxSum; }
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結(jié)》、《php字符串(string)用法總結(jié)》、《php常用函數(shù)與技巧總結(jié)》、《PHP錯(cuò)誤與異常處理方法總結(jié)》、《PHP基本語法入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
- PHP判斷一個(gè)數(shù)組是另一個(gè)數(shù)組子集的方法詳解
- PHP獲取數(shù)組最大值下標(biāo)的方法
- PHP查找數(shù)值數(shù)組中不重復(fù)最大和最小的10個(gè)數(shù)的方法
- php獲取數(shù)組中鍵值最大數(shù)組項(xiàng)的索引值
- php求正負(fù)數(shù)數(shù)組中連續(xù)元素最大值示例
- 求PHP數(shù)組最大值,最小值的代碼
- php數(shù)組函數(shù)序列之a(chǎn)rray_sum() - 計(jì)算數(shù)組元素值之和
- php計(jì)算數(shù)組相同值出現(xiàn)次數(shù)的代碼(array_count_values)
- php計(jì)算多維數(shù)組中所有值總和的方法
- PHP計(jì)算數(shù)組中值的和與乘積的方法(array_sum與array_product函數(shù))
- php常用數(shù)組array函數(shù)實(shí)例總結(jié)【賦值,拆分,合并,計(jì)算,添加,刪除,查詢,判斷,排序】
- PHP數(shù)組操作實(shí)例分析【添加,刪除,計(jì)算,反轉(zhuǎn),排序,查找等】
相關(guān)文章
php結(jié)合md5實(shí)現(xiàn)的加密解密方法
這篇文章主要介紹了php結(jié)合md5實(shí)現(xiàn)的加密解密方法,涉及PHP字符串操作及加密解密算法實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-01-01使用PHP提取視頻網(wǎng)站頁面中的FLASH地址的代碼
這幾天工作中需要寫個(gè)程序?qū)τ谝粋€(gè)視頻網(wǎng)站地址,如優(yōu)酷的某個(gè)地址,提取出其中的FLASH地址來。2010-04-04php實(shí)現(xiàn)的Cookies操作類實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)的Cookies操作類及其用法實(shí)例,包括了常見了保存、讀取、更新及清除cookie等操作,在需要進(jìn)行cookie操作時(shí)非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-09-09