ホームページ >php教程 >php手册 >PHP シンプルバブルメソッドのコード共有

PHP シンプルバブルメソッドのコード共有

WBOY
WBOYオリジナル
2016-06-13 11:58:22826ブラウズ

非常に基本的なものです。コードが十分に簡潔ではないように感じます。

コードをコピーします。 コードは次のとおりです。


function BubbleSort($str){
for($i=0;$ifor ($k =count($str)-2;$k>=$i;$k--){//この値を前方にバブルします。 ($str[$k 1]<$str[$ k]){ //小なり記号を大なり記号に変更します。これにより、降順でソートされます。
$tmp=$str[$k; 1];
$str[$k 1]=$str[$k];
}
}
$str;
}
// 以下はテストです
$str= array(5,8,2,6,10,0,3,12,11); ($str));
?>



php バブル ソート 2

基本的な概念は、2 つの隣接する数値を順番に比較し、小数点を入力します。前と後ろに大きな数字。つまり、最初に 1 番目と 2 番目の数値を比較し、小数を最初に、大きい数値を最後に置きます。次に、2 番目の数値と 3 番目の数値を比較し、小数を前に、大きな数値を後ろに置きます。最後の 2 つの数値を比較するまで同様に、小数を前に、大きな数値を後ろに置きます。上記のプロセスを繰り返しますが、引き続き最初の数値のペアから開始し (2 番目の数値と 3 番目の数値の交換により、最初の数値が 2 番目の数値より小さくなくなっている可能性があるため)、小数を最初に置き、次に最後に、最大数の前の隣接する数値のペアまで比較し、小数点を前に、大きな数を後ろに置きます。2 番目のパスが終了し、最後から 2 番目の数値に新しい最大数が取得されます。このようにして、最終的に並べ替えが完了するまで続けます。
ソートの際、常に小数点以下が前方に、大きな数字が後方に配置されるため、バブルが上昇するのに等しいため、バブルソートと呼ばれます。 二重ループを使用して実装され、外側のループ変数が i に設定され、内側のループ変数が j に設定されます。外側のループを 9 回繰り返し、内側のループを 9、8、...、1 回繰り返します。毎回比較される 2 つの要素は、内側のループ j に関連付けられています。これらは、それぞれ a[j] と a[j 1] で識別できます。それぞれの i、j の
値は、順に 1、2、...10-i です。



コードをコピー

コードは次のとおりです: function asc($a)

{

for($i=0;$i{
for($j=0;$j{
if($a[$j]>$a[$j 1])
{
$tmp=$a[$j 1]; $a[ $j 1]=$a[$j];
$a[$j]=$tmp;
}
}
print_r($a); 🎜>}
$a = array(9,8,17,6,26,4,33,2,1);
print_r(
?>); >< br />
関数説明($a)
{
$c=array(); -1; $i>0;$i--)
{
for($j=0;$j{
if( $a[ $j]<$a[$j 1])
{
$tmp=$a[$j 1]
$a[$j 1]=$a[$j]; ];
$a[$j]=$tmp;
}
}
}
print_r($a);
$arr=array(33, 24,56 ,55,59);
desc($arr);
?> 筆記試験の問題はかなり○○だと思いますが、プログラムはペンではなくコンピュータで書くべきです。
PHP プログラム ファイル sort_bubble_up.php



コードをコピー

コードは次のとおりです:



バブルソートのデモ


バブル並べ替えのデモ


;
//配列をランダムに生成します
$arr=array();
echo '初期値;
echo ''
for($i=0;$i$arr[$ i]=rand();
echo "";
}
// バブルソートを実行します。
for($i=9;$i>0;$i--){
echo 'th'.(10 -$i).'time';
for($j=0;$jif($arr[$j]< ;$arr[$j 1]){
$tmp=$arr[$j];
$arr[$j]=$arr[$j 1] ; ]=$tmp;
}
エコー '';
for($k=0;$kswitch($k){
case $j : echo '"; /tr>';
}
}
//並べ替え結果を表示
echo 'result ';
echo '';
for($i=0;$iecho "";
}
echo '';
?> ;
$arr[$i]={$arr[$i]}
';
case $j 1 : echo '
';
}
echo "$arr[$k]={$arr[$k]}
$arr[$ i]={$arr[$i]}




スタイルシートファイル sort.css


コードをコピー

コードは次のとおりです h1{text-align: center; color: blue;} table{font-size: 12px; 背景色: black; : センター;}

td{背景色: 白;}

.base{背景色: #0FF;}
.light{背景色: #0DD ;}
.title{背景色: #3FF; テキスト整列: 中央;}


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。