ホームページ > バックエンド開発 > PHPチュートリアル > phpキャッシュKMPアルゴリズム

phpキャッシュKMPアルゴリズム

WBOY
リリース: 2016-06-13 13:09:55
オリジナル
753 人が閲覧しました

php は KMP アルゴリズムを実装します
/**
* KMP アルゴリズムの PHP 実装
*
* @author zhaojiangwei 2011/10/22 10:28
*/
d12287db6454778108d02f18587ed399
class KMP{
private $next = NULL //パターン文字列の次の配列 T
private $t; = NULL; //パターン文字列
private $str = NULL; //メイン文字列

public function KMP($str){
$this->str = str_split($str);
$this->next = array();
}

//メイン文字列の長さを返します
public function getStrCount(){
return count($this -> ;str);
ext ($substr);
$strCount = $this->getStrCount();
count($substr);
$subIndex = 0; // substringの開始比較
$ strindex = 0; == $ substrcount){
return $ strindex -$ substrcount;
; ($ t);

$ This-> next [0] = -1;
$count = count($t);

$i = 0;
$j = -1;
while($i < $count){
if( $j == -1 || $t[$i] == $t[j] ){
                   
if($t[$i] == $t[$j]){
$this->next[$i];
} else{
$this->next[$i] = $j;
}
}else{
$j = $this->next[$j];
}
}

return $this->next;
}

}

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート