Heim > Artikel > Backend-Entwicklung > Gemischte Strings (PHP-Version)
Finden Sie die Zeichenfolgen in der falschen Reihenfolge in einigen Zeichenfolgen heraus, z. B. „abc“, „cba“ ist eine Reihe von Zeichenfolgen in der falschen Reihenfolge
Beispiel
Eingabe: (hello, lloeh,helll,olelh,code,abc,cba,dec,asd,bca,);
Ausgabe:
array ( [0] => hallo [ 1] = > lloeh [3] => abc [5] =>
Das Obige stellt die ungeordnete Zeichenfolge (PHP-Version) vor, einschließlich des relevanten Inhalts. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.
<?php class Map { public $b; public function __construct(){ $this->b = array(); $s = 'a'; for ($i =0;$i < 26; $i++) { $this->b[$s] = 0; $s++; } } } class Jumble { private $a; private $m; private $key; private $result; public function __construct(){ $this->a = array(hello,lloeh,helll,olelh,code,abc,cba,dec,asd,bca,); $this->m = count($this->a); $this->key = array(); for ($k =0; $k < $this->m; $k++) { $this->key[$k]=0; } $this->result = array(); } public function slove() { for ($i = 0; $i < $this->m; $i++) { for ($q = $i + 1; $q < $this->m; $q++) { $s1 = $this->a[$i]; $s2 = $this->a[$q]; $len1 = strlen($s1); $len2 = strlen($s2); if ($len1 == $len2) { $bool = true; $t1 = new Map(); $t2 = new Map(); for ($j = 0; $j < $len1; $j++) { $w1 = $s1[$j]; $w2 = $s2[$j]; $t1->b[$w1]++; $t2->b[$w2]++; } $ss = 'a'; for ($p = 0; $p < 26; $p++) { if ($t1->b[$ss] != $t2->b[$ss]) { $bool = false; } $ss++; } if ($bool == true) { if ($this->key[$i] == 0) { array_push( $this->result, $s1); $this->key[$i] = 1; } if ($this->key[$q] == 0) { array_push( $this->result, $s2); $this->key[$q] = 1; } } } } } } public function prints() { print_r( $this->result); } } $r = new Jumble(); $r->slove(); $r->prints(); ?>