国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

劍指Offer——連續(xù)子數(shù)組的最大和

2019-11-08 02:02:21
字體:
供稿:網(wǎng)友

HZ偶爾會拿些專業(yè)問題來忽悠那些非計算機專業(yè)的同學(xué)。今天測試組開完會后,他又發(fā)話了:在古老的一維模式識別中,常常需要計算連續(xù)子向量的最大和,當(dāng)向量全為正數(shù)的時候,問題很好解決。但是,如果向量中包含負(fù)數(shù),是否應(yīng)該包含某個負(fù)數(shù),并期望旁邊的正數(shù)會彌補它呢?例如:{6,-3,-2,7,-15,1,2,2},連續(xù)子向量的最大和為8(從第0個開始,到第3個為止)。你會不會被他忽悠住?

一種思路,使用兩個循環(huán),分別計算從開始s到結(jié)束e的和,找出最大的數(shù),但是這種解法的時間復(fù)雜度為n*n,不建議。

另一種思路,遍歷一次,當(dāng)前的和小于0時拋棄,因為負(fù)數(shù)不管加什么數(shù),都是變小的,因此重新計算就可以了。

PRivate static int solution(int[] n){ int max=Integer.MIN_VALUE,sum=max; for(int i=0;i<n.length;i++){ if(sum<0){ sum=0; } sum+=n[i]; if(sum>max){ max=sum; } } return max; }
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 鸡泽县| 个旧市| 颍上县| 广宗县| 乐山市| 娱乐| 吐鲁番市| 新巴尔虎右旗| 邵东县| 甘洛县| 平果县| 中方县| 利津县| 海安县| 祁连县| 吴堡县| 南召县| 翼城县| 易门县| 长岛县| 彭山县| 铁岭县| 广元市| 靖宇县| 崇仁县| 南充市| 嵩明县| 洪洞县| 海伦市| 尤溪县| 宣恩县| 汕尾市| 萨嘎县| 收藏| 无棣县| 濮阳市| 萝北县| 宽城| 麻城市| 吉林市| 平果县|