zoukankan      html  css  js  c++  java
  • 排序3--选择排序

    <?php
    //选择排序
    //原理:每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完.
    
    
    $arr = array_rand(range(1, 100), 10);
    shuffle($arr);
    $arr = [7,6,5,4,3,2,1];
    
    
    function select_sort($arr)
    {
        $len = count($arr);
        for ($i = 0; $i < $len - 1; $i++) { //循环len次
            $min = $i;
            print_r($i);
            for($j = $i+1;$j<$len;$j++){ //每次找到最小的min
                if($arr[$j] < $arr[$min]){
                    $min = $j;
                }
            }
    
            if($min != $i){
                $tmp = $arr[$min];
                $arr[$min] = $arr[$i];
                $arr[$i] = $tmp;
            }
            print_r("第".($i+1)."次排序后结果".join(',',$arr).'<br>');
    
        }
        return $arr;
    
    }
    
    $res=  select_sort($arr);
    echo join(',',$res);
    <?php
    //选择排序 找到最小的下表,依次放入到最左边
    
    $arr = [7,6,5,4,3,2,1];
    
    function select_sort($arr)
    {
    
        for($i = 0;$i<count($arr)-1; $i++){ //循环次数
            $min = $i; //默认最小的为第一个
    
            for($j = $i+1;$j<count($arr);$j++){ //$i已经排序好的下标  从他后面依次开始和min下标的比较,最小的给出来
                if($arr[$j] < $arr[$min]){
                    $min = $j;
                 }
            }
    
            //如果最小的下表不等于开始的第一个 交换
            if($min != $i){
                $tmp = $arr[$i];
                $arr[$i] = $arr[$min];
                $arr[$min] = $tmp;
            }
    
            print_r("第".($i+1).'次'.join(',',$arr)."<br>");
    
        }
    
        return $arr;
    }
    
    echo join(',',$arr);
    echo "<br>";
    $res = select_sort($arr);
    echo join(',',$res);
    

      

  • 相关阅读:
    python写的百度贴吧相册下载
    C#的图片拼接
    删除目录下的所有".svn"文件
    centOS 6.5 yum升级 gcc4.8 然后又退回来4.4
    代理的分类简述特点
    GCC 特性整理
    纯C 实现 strpos substr strspilt str_trim
    编译putty 源码去掉 Are you sure you want to close this session? 提示
    OpenWrt tcpdump 抓包
    安卓 打飞机 app 开发 第一篇
  • 原文地址:https://www.cnblogs.com/brady-wang/p/11383094.html
Copyright © 2011-2022 走看看