Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erklärung der Verwendung von PHP zum Finden des längsten gemeinsamen Teilstrings zweier Strings

Ausführliche Erklärung der Verwendung von PHP zum Finden des längsten gemeinsamen Teilstrings zweier Strings

*文
*文Original
2018-01-03 17:41:292217Durchsuche

Wie finde ich mit PHP den längsten gemeinsamen Teilstring zweier Strings? In diesem Artikel wird hauptsächlich die Methode zum Ermitteln der längsten gemeinsamen Teilzeichenfolge zweier Zeichenfolgen in PHP vorgestellt, die das Durchlaufen, Betreiben, Beurteilen und andere verwandte Betriebsfähigkeiten von PHP-Zeichenfolgen und -Arrays umfasst. Ich hoffe, es hilft allen.

Die bisherige PHP-Methode zur Lösung des Problems mit den längsten Teilzeichenfolgen wurde auf Basis von Java verbessert. Hier sehen wir uns einen weiteren gängigen Teilzeichenfolgenalgorithmus an.

Der Code lautet wie folgt:

<?php
$a = &#39;abceee12345309878&#39;;
$b = &#39;abceeew2345i09878fsfsfsfabceeewsfsdfsfsabceeew&#39;;
$c = array();
$lenht1 = strlen($a);
$lenth2 = strlen($b);
$startTime = microtime(true);
for ($i=0;$i<$lenht1;$i++) {
  for ($j=0;$j<$lenth2;$j++) {
    $n = ($i-1>=0 && $j-1>=0)?$c[$i-1][$j-1]:0;
    $n = ($a[$i] == $b[$j]) ? $n+1:0;
    $c[$i][$j] = $n;
  }
}
foreach ($c as $key=>$val) {
  $max = max($val);
  foreach ($val as $key1 =>$val1) {
    if ($val1 == $max && $max>0) {
      $cdStr[$max] = substr($b,$key1-$max+1,$max);
    }
  }
}
ksort($cdStr);
$endTime = microtime(true);
echo "Totle time is " . ($endTime - $startTime) . " s"."<br/>";
print_r(end($cdStr));
exit;
?>

Laufergebnis:

Totle time is 0.0012800693512 s
abceee

Verwandte Empfehlungen:

Detaillierte Erläuterung der hochpräzisen BC-Funktionsbibliothek von PHP

Detaillierte Erläuterung der PHP-Methode zur Berechnung der Stabilität von Schülerergebnissen

Detaillierte Erläuterung der Sicherheitslücke bei der Sitzungsdeserialisierung von PHP

Das obige ist der detaillierte Inhalt vonAusführliche Erklärung der Verwendung von PHP zum Finden des längsten gemeinsamen Teilstrings zweier Strings. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn