博客列表 >数组排序-选择排序

数组排序-选择排序

bokewinner
bokewinner原创
2017年10月16日 21:03:57754浏览

选择排序的描述:

  1. 假设有n个数,比较的趟数为n-1次

  2. 每一趟得到最大值

  3. 把最大值的位置与最后一项的位置交换

<?php
$arr = array(12,23,34,45,15,2,12);
$len = count($arr);
for($i = 0;$i < $len - 1;$i++)
{
    //最大值的初始化
    $max = $arr[0];
    $index = 0;
    //求最大值
    for($j = 0;$j < $len - $i;$i++)//-$i为减少之前比较好的数(已经固定好的数)
    {
        if($max < $arr[$j])
        {
            $index = $j;
            $max = $arr[$j];
        }
    }
    //交换最大值的位置和最后一项的位置
    $temp = $arr[$index];
    $arr[$index] = $arr[$len-$i-1];
    $arr[$len-$i-1] = $temp;
}
?>


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议