最大子串行和的問題,資料結構與演算法一書分析中給出了四種演算法,最優的演算法的時間複雜度為o(n),
1 // maxsubsequencesum.cpp : 定義控制台應用程式的入口點。2 //
3 4 #include "stdafx.h"
5 #include 6 using namespace std;
7 int maxsubsequesum(const int *a,int n)
8 {9 int sumtemp=0;
10 int sumresult=0;
11 12 for(int index=0;index
演算法的正確性分析沒有給出過程,分析過程如下:
此演算法將整個陣列序列分成了不同的子串行,子串行有如下規則
得出最大值有以下兩種情況:
個人部落格:
標籤: 面試題
好文要頂
關注我收藏該文
harlanc
關注 - 9
粉絲 - 40
+加關注00
最大子串行和演算法
include stdio.h 演算法1 int maxsubsequencesum1 const int a,int n int thissum,maxsum,i,j,k maxsum 0 for i 0 i n i for j i j n j thissum 0 for k i k j k th...
最大子串行和演算法
題目 求a i 中和最大的子串行。時間複雜度o nlogn 使用分治 遞迴的方法。分別求出左邊n 2長度的最大子串行和 右邊n 2長度的最打字序列和 以及橫跨這兩部分且通過中間的最大和 要分別求出兩邊帶有最中間邊界的最子大序列和,將其相加 由於不是最簡單的方法,這裡不再贅述。時間複雜度o n 遍歷一...
演算法 最大子串行和
最大子串行和的問題,資料結構與演算法一書分析中給出了四種演算法,最優的演算法的時間複雜度為o n 1 定義控制台應用程式的入口點。2 34 include stdafx.h 5 include 6 using namespace std 7int maxsubsequesum const int a...