$array=array('2','4','8','5','1','7','6','9','10','3'); echo "Unsorted array is: "; echo "<br />"; print_r($array); for($j = 0; $j < count($array); $j ++) { for($i = 0; $i < count($array)-1; $i ++){ if($array[$i] > $array[$i+1]) { $temp = $array[$i+1]; $array[$i+1]=$array[$i]; $array[$i]=$temp; } } } echo "Sorted Array is: "; echo "<br />"; print_r($array);
ตรวจสอบผลลัพธ์
$array=array('2','4','8','5','1','7','6','9','10','3'); echo "Unsorted array is: "; echo "<br />"; echo "<pre>"; print_r($array); echo "</pre>"; for($j = 0; $j < count($array); $j ++) { for($i = 0; $i < count($array)-1; $i ++){ if($array[$i] > $array[$i+1]) { // ถ้าค่าในอาเรย์ตัวก่อนหน้า มีค่ามากกว่าค่าในอาเรย์ตัวถัดไป $temp = $array[$i+1]; // เก็บค่าในอาเรย์ตัวถัดไป ไว้ในตัวแปร $temp ชั่วคราว $array[$i+1] = $array[$i]; // ใส่ค่าในอาเรย์ตัวก่อนหน้า แทนที่ ค่าในอาเรย์ตัวถัดไป $array[$i] = $temp; // ใส่ค่าในอาเรย์ตัวถัดไป แทนที่ ค่าในอาเรย์ตัวก่อนหน้า $plus_j = $j+1; $plus_i = $i+1; echo "Loop ด้านนอก รอบที่ ".$plus_j." Loop ด้านใน รอบที่ ".$plus_i. " ถ้าค่าในอาเรย์ตัวก่อนหน้า มีค่ามากกว่าค่าในอาเรย์ตัวถัดไป เก็บค่าในอาเรย์ตัวถัดไป ไว้ในอาเรย์ตัวก่อนหน้า". " ".$array[$i]. "<br/>"; echo "// ใส่ค่าในอาเรย์ตัวก่อนหน้า แทนที่ ค่าในอาเรย์ตัวถัดไป". " ".$array[$i+1]. "<br/><br/><br/>"; echo "เรียงตัวเลขใหม่<pre>"; print_r($array); echo "</pre>"; echo "<br/>"; } } } echo "-------------------------------------------------------------<br />"; echo "สรุปผลลัพธ์ สุดท้าย Sorted Array is: "; echo "<br />"; echo "<pre>"; print_r($array); echo "</pre>";