Heim  >  Artikel  >  Backend-Entwicklung  >  Beispielcode für den PHP-Array-Blasensortierungsalgorithmus

Beispielcode für den PHP-Array-Blasensortierungsalgorithmus

怪我咯
怪我咯Original
2017-07-13 10:29:571359Durchsuche

Bubble Sort (Bubble Sort) ist ein relativ einfacher Sortieralgorithmus aus dem Bereich der Informatik.

Es durchläuft wiederholt die zu sortierende Sequenz, vergleicht jeweils zwei Elemente und vertauscht sie, wenn sie in der falschen Reihenfolge sind. Der Besuch des Arrays wird wiederholt, bis kein Austausch mehr erforderlich ist, was bedeutet, dass das Array sortiert wurde.

Der Name dieses Algorithmus kommt von der Tatsache, dass größere Elemente durch den Austausch langsam an die Spitze des Arrays „schweben“

In diesem Artikel werden hauptsächlich PHP-Arrays vorgestellt Der Blasensortierungsalgorithmus analysiert die Implementierungsprinzipien und verwandten Techniken des PHP-Array-Blasensortierungsalgorithmus in Form einfacher Beispiele. Freunde in Not können sich auf beziehen. Die Details lauten wie folgt:

<?php
/*@冒泡排序算法
*/
$array=array(5,45,22,11,32,28,35,56,17,21,92);
$len=count($array);//计算数组长度
for($i=0;$i<$len-1;$i++){//需要比较$len-1轮,每一轮需要比较$len-1次
  for($j=0;$j<$len-1;$j++){//需要比较$len-1次,因为循环到最后一个数时,后面没有数可以比较了,所以循环到倒数第二个数正好
   $k=$j+1;//得到当前数的后一个数的下标,我们依次比较的是数组下标分别为0-1,1-2,3-4的数值对
   if($array[$j]>$array[$k]){//比较两数,如果前一个数比后一个大,则交换两个数的顺序
     $t=$array[$j];
     $array[$j]=$array[$k];
     $array[$k]=$t;
   }//第一次循环比较完之后,进行下一轮比较
  }
}
print_r($array);
/*理解冒泡排序的关键在于,它的比较结果是大数往后放,依次得出的是最大的数,第二大的数,第三大的数。。。依次类推*/
?>

Das obige ist der detaillierte Inhalt vonBeispielcode für den PHP-Array-Blasensortierungsalgorithmus. 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