zoukankan      html  css  js  c++  java
  • 选择排序 Selection sort

      它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法(比如序列[5, 5, 3]第一次就将第一个[5]与[3]交换,导致第一个5挪动到第二个5后面)。

    <?php
    
    function SelectSort($arr)
     {
         $count=count($arr);
      for ($i=0; $i <$count ; $i++) { 
          //默认$i是最小的
         $min=$i;
        for ($j=$i; $j <$count; $j++) { 
            if ($arr[$min] > $arr[$j]) {
                //如果最小值大于下一个数,就立刻变值
                $min=$j;
            }
        }
        //把最小的下标换成第一个值
        if ($min!=$i) {
            list($arr[$min],$arr[$i])=[$arr[$i],$arr[$min]];
        }
      }
      return $arr;
     }
     //假设需要排序的数组
    $arr=array(5,9,8,2,4,6,7,1,25,13,18,22);
    $new_arr=SelectSort($arr);
    print_r($new_arr);
     ?>
  • 相关阅读:
    【t090】吉祥数
    【u221】分数
    【u212】&&【t036】最大和
    【u125】最大子树和
    【u124】环状最大两段子段和
    【u123】最大子段和
    【u122】迎接仪式
    【u121】教主的花园
    【u118】日志分析
    【u117】队列安排
  • 原文地址:https://www.cnblogs.com/mmmzh/p/10141000.html
Copyright © 2011-2022 走看看