您的位置:首页 > 编程语言 > PHP开发

用php实现选择排序(简单排序)算法

2017-03-12 12:35 246 查看

用php实现选择排序(简单排序)算法

选择排序算法的原理其实很简单,就是从头开始选定一个位置,令该位置上的数与其他位置上的数进行比对,将该位置上的与更小位置上的数进行交换,从而实现排序。

<?php
/**
* Created by PhpStorm.
* User: user
* Date: 03/03/2017
* Time: 11:33
*/

/*
* 2.简单选择排序
* swap函数在数组$arr之前加了&,
* 代表其地址,这样可以省去return
* 来返回值,代码更加简洁
* 原理见:http://blog.csdn.net/baidu_30000217/article/details/53071856
*/

function swap(array &$arr, $a, $b){
$temp = $arr[$a];
$arr[$a] = $arr[$b];
$arr[$b] = $temp;
}

function selectSort(array &$arr){
$count = count($arr);
for ($i = 0; $i < $count; $i++){
$min = $i;
for ($j = $i + 1; $j < $count; $j++){
if ($arr[$min] > $arr[$j]){
$min = $j;
}
}

if ($min != $j){
swap($arr, $min, $i);
}
}
}

$arr = array(9, 1, 5, 8, 3, 7, 4, 6, 2);
selectSort($arr);
echo "<pre>";
print_r($arr);
echo "</pre>";
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 排序算法 算法
相关文章推荐