// 冒泡排序
function BubbleSort($arr) $arr ) {{
// 得到數組總長度
$num = count( $arr);
// 正向遍歷數組 for ($i = = 1; $i $num; $i++ ) {
// 反向遍歷 for ($j = = $num - 1; $j >= $i ; $j-- ) {
// 相鄰兩個數字比較 if ($arr[$j] $arr[$j-1]) {
// 暫存較小的數
$iTemp = $arr $arr $arr >$j -1];
// 把較大的放前面 $arr[$j-1] = $arr[$j];
// 較小的放後面
$arr[$j] ]
$iTemp;
}
}
}
return $arr;
}
// 交換法排序function ExchangeSort($arr){ $arr){$arr){$arr){$arr){
$num = count( $arr);
// 遍歷數組
for ($i = = 0;$i $num - 1; $i++$i++$i++$i++$i++$i++) 🎜>{ // 取得目前索引的下一個索引
for ($j = = $i + 1; $j $num; $j++ ) {
// 比較相鄰兩個的值大小 if ($arr[$j] $arr[$i[$i[ $i[$i [$i[$i[1 {
// 暫存較小的數
$iTemp = $arr $arr $arr >$i];
// 把較大的放前面 $arr[$i] ]
$arr[$j];
// 較小的放後面
$arr[ $j] ]
$iTemp;
}
}
}
return $arr;
}
// 選擇法排序function SelectSort($arr) $arr ) 🎜>
// 得到數組總長度
$num = count( $arr );
// 遍歷數組 for ($i = = 0;$i $num- 1; $i++) {
// 暫存目前值
$iTemp = $arr $arr $arr >$i];
// 暫存目前位置 $iPos = $i $i $i >
// 遍歷目前位置以後的資料
for ($j = = $i + 1;$j $num; $j ++) {
// 如果有小於目前值的 if ($arr[$j] $iTemp) { ) {
// 暫存最小值
$iTemp = $arr $arr $arr $arr >$j];
// 暫存位置
$iPos = $j $j $j;
}
}
// 把目前值放到算好的位置 $arr[$iPos]
$arr[$i];
// 把目前值換成算好的值
$arr[ $i] ]
$iTemp;
}
return $arr;
}
// 插入法排序
function InsertSort($arr){ $num = count( $arr);
// 遍歷數組
for ($i = = 1 ;$i $num; $i++) {
// 取得目前值 $iTemp = $arr $arr $arr >$i];
// 得到目前值的前一個位置
$iPos = $i - 1;
// 如果目前值小於前一個值切未到陣列開始位置 while (($iPos >= > 🎜>0) && ($iTemp $iTemp $iTemp $arr[$iPos ])) ])) {{{{{{{{{{
// 把前一個的值往後放一位
$arr[$iPos
|