美文网首页程序员的成长之道
PHP实现选择排序算法

PHP实现选择排序算法

作者: 菜菜菜鸟羊 | 来源:发表于2019-09-27 16:47 被阅读0次

直接上代码

/**
 * 选择排序
 * 思路:选择数据中最小(最大)的数,放到最前面,完成排序
 *
 * @param array $noSortArr  需要排序的数据
 * @return array
 */
function selectionSort($noSortArr) : array
{
    $len = count($noSortArr);
    for ($i = 0; $i < $len - 1; $i++) { //循环$len-1,原因:最后一个数就是排序的最后一个,所以就没有必要循环了
        $minIndex = $i;   //标记第$i为最小,也就是默认第一个数为最小
        for ($j = $i + 1; $j < $len; $j++) {  //循环除了第一个数之外的数
            if ($noSortArr[$j] < $noSortArr[$minIndex]) {
                $minIndex = $j; //如果有比标记的数小的数,则标记这个数为新的最小数,以此类推
            }
        }
        //每轮循环结束后,把最小数放到循环数的开始位置
        $temp = $noSortArr[$i];
        $noSortArr[$i] = $noSortArr[$minIndex];
        $noSortArr[$minIndex] = $temp;

    }

    return $noSortArr;
}

-欢迎大家指正和优化,谢谢!

相关文章

  • 算法-选择排序

    算 法:选择排序算法时间复杂度: 选择排序算法概述 选择排序伪代码 选择排序实现 选择排序算法概述 排序算法有许...

  • PHP实现选择排序算法

    直接上代码 -欢迎大家指正和优化,谢谢!

  • 常用的排序算法

    常用的排序算法(PHP实现)_慕课手记

  • 排序算法详细代码实现

    算法分类 算法时间复杂度 选择排序 插入排序 C++实现 Python实现 冒泡排序 Python实现 归并排序 ...

  • PHP算法系列教程(一)-四大排序算法

    PHP算法系列教程(一)-四大排序算法 冒泡 冒泡排序原理图 选择 选择排序原理图 插入 插入排序原理图 快排 快...

  • python实现选择排序(SelectionSort)

    python实现【选择排序】 算法原理及介绍 选择排序(Selection-sort)是一种简单直观的排序算法。它...

  • java 实现排序算法之「选择排序」

    java 实现排序算法系列 继冒泡排序算法之后,选择排序终于和大家见面了。为什么冒泡排序之后要说选择排序呢,是因为...

  • python 排序算法

    文章概述 介绍各大常用经典的排序算法和效率,以及python实现常用算法(冒泡排序,选择排序,快速排序,插入排序)...

  • 排序算法总结

    基础排序算法 基础排序算法相关接口和实现类 接口: 实现类(后续排序的父类): 1.选择排序 两层循环:内层循环进...

  • 排序算法(PHP实现)

    冒泡排序 两两比较, 讲逆序的两个数交换位置 快速排序 选择一个基准元素, 讲数组里的数与之比较, 区分出比之大的...

网友评论

    本文标题:PHP实现选择排序算法

    本文链接:https://www.haomeiwen.com/subject/ujdauctx.html