兩演算法 求陣列元素出現次數和求子陣列最大和

2021-06-07 18:24:25 字數 819 閱讀 8105

一. 求陣列元素出現次數

給出一含有十個數的陣列,構建一新陣列,要求新陣列中的每個數是先前陣列中相對應元素在新陣列中出現的次數。   

給出陣列為:   

[0,1,2,3,4,5,6,7,8,9]

舉乙個例子,   

數值: 0,1,2,3,4,5,6,7,8,9   

分配: 6,2,1,0,0,0,1,0,0,0   

0在出現了6次,1在出現了2次,   

2在出現了1次,3在出現了0次....   

以此類推.. 

思路:採用假設檢驗法

class bottomnum

}function getbottom()

var_dump($this->bottom);

}function setbottom()

}return $result;

}function getfrequecy($num)

return $count;

}}$bottomnum = new bottomnum();

$bottomnum->getbottom();

二. 求子陣列最大和

輸入乙個整形陣列,陣列裡有正數也有負數。

陣列中連續的乙個或多個整數組成乙個子陣列,每個子陣列都有乙個和。

求所有子陣列的和的最大值。要求時間複雜度為o(n)。

function submaxsum($array)

elseif($tmp<=0)

}echo $sum;

}

陣列元素出現次數

10分鐘時間,根據上排給出十個數,在其下排填出對應的十個數 要求下排每個數都是先前上排那十個數在下排出現的次數。上排的十個數如下 0,1,2,3,4,5,6,7,8,9 舉乙個例子,數值 0,1,2,3,4,5,6,7,8,9 分配 6,2,1,0,0,0,1,0,0,0 0在下排出現了6次,1在下...

使用KMP演算法求子串出現次數

1.kmp演算法 對應長度為n的目標串和長度為m的模式串,kmp演算法的複雜度是o m n 其中o m 的時間用於需找模式串的失效函式,o n 的時間用於匹配。演算法思想說起來比較麻煩,但是並不複雜,參考資料結構的書吧。2.下面給出kmp的 search 和子串出現次數 count 其中count ...

使用KMP演算法求子串出現次數

1.kmp演算法 對應長度為n的目標串和長度為m的模式串,kmp演算法的複雜度是o m n 其中o m 的時間用於需找模式串的失效函式,o n 的時間用於匹配。演算法思想說起來比較麻煩,但是並不複雜,參考資料結構的書吧。2.下面給出kmp的 search 和子串出現次數 count 其中count ...