PHP如何实现选择排序?
Posted php中文网最新课程
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP如何实现选择排序?相关的知识,希望对你有一定的参考价值。
源 / php中文网 源 / www.php.cn
选择排序在冒泡排序的基础上进行了改进,每次通过列表时只进行一次传递交换。简单来说,选择排序的原理就是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。 选择排序是不稳定的排序方法。
(查看原文请点击本文末尾左下角:阅读原文)
PHP选择排序的代码示例如下:
<?php
function
selection_sort(
$data
)
{
for
(
$i
=0;
$i
<
count
(
$data
)-1;
$i
++) {
$min
=
$i
;
for
(
$j
=
$i
+1;
$j
<
count
(
$data
);
$j
++) {
if
(
$data
[
$j
]<
$data
[
$min
]) {
$min
=
$j
;
}
}
$data
= swap_positions(
$data
,
$i
,
$min
);
}
return
$data
;
}
function
swap_positions(
$data1
,
$left
,
$right
) {
$backup_old_data_right_value
=
$data1
[
$right
];
$data1
[
$right
] =
$data1
[
$left
];
$data1
[
$left
] =
$backup_old_data_right_value
;
return
$data1
;
}
$my_array
=
array
(3, 0, 2, 5, -1, 4, 1);
echo
"原始数组:
"
;
echo
implode(
', '
,
$my_array
);
echo
"
排序后数组:
"
;
echo
implode(
', '
,selection_sort(
$my_array
)). PHP_EOL;
输出:
原始数组: 3, 0, 2, 5, -1, 4, 1
排序后数组: -1, 0, 1, 2, 3, 4, 5
本篇文章就是关于PHP选择排序的实现方法介绍,希望对需要的朋友有所帮助!
-END-
声明:本文选自「 php中文网 」,搜索「 phpcnnew 」即可关注!
▼请点击下方:“阅读原文”,在线查看全部文章内容!
以上是关于PHP如何实现选择排序?的主要内容,如果未能解决你的问题,请参考以下文章