文章 > PHP > php提选排序是什么

php提选排序是什么

小妮情深至浅

2021-02-08 17:28:511402采风 · 0贮藏 · 0评述

我们之前接触的排序方法都是年深月久,又或者顺序颠倒过来。本篇要讲的提选排序有一些特殊,从它的名称上就可以看出,需要提选每次排序时最小的数放在开头,然后在剩下的队列中重复这个过程。下面我们就提选排序的原理,使唤规则,与其他排序差别,实例带来介绍。

1.原理

在一组数据中,怎样选出好股票最小的数与第一个位置交换

然后在剩下的数据中在找到最小的数和第二个位置交换

然后在剩下的数据中在找到最小的数和第三个位置交换

依次类推截至倒数第二个数和结尾一个数对比

2.使唤规则

(1)数组开始索引是明确的,一般是0。

(2)数组索引的必须是连续的整型或者数字字符串或者两者混合。

3.与出泡排序的差别

出泡排序没发现一个异常顺序就进行一次调换,提选排序无乃数组下标(每遍历一次记住最小值小标)代替中间的调换,等到结尾进行一次调换即可。

4.实例

<?php
function selectionSort ($arr) {
        $count = count($arr);
        for ($i = 0; $i < $count - 1; $i++) {
                $minIndex = $i;
                for ($j = $i + 1; $j < $count; $j++) {
                        if ($arr[$minIndex] > $arr[$j]) {
                                $minIndex = $j;
                        }
                }
                if ($minIndex != $i) {
                        $temp = $arr[$i];
                        $arr[$i] = $arr[$minIndex];
                        $arr[$minIndex] = $temp;
                }
        }
        return $arr;
}
 
$arr = [15, 3, 6, 43, 132, 4, 28, 39, 99];
 
$res = selectionSort($arr);
print_r($res);

以上就是php提选排序的基本介绍,可以说整个队列中最小的数值不一定是开头的那个,这也是提选排序产生双色球开奖结果的一种特色。大家对这种排序方法感兴趣的话,可以照着上面的实例代码试一试。敬称php学习指路:php教程

关注公众微信号,随时随地在线学习

本教程美女隐私部分的图片素材缘于网络。版权真心话大冒险问题集联系站长!

Baidu