php数据结构 算法(PHP描述) 简单选择排序 simple selection sort

yipeiwu_com5年前PHP代码库
复制代码 代码如下:

<?php
/**
* 简单选择排序 simple selection sort
*
* 原理: 一次选定数组中的每一个数,记下当前位置并假设它是从当前位置开始后面数中的最小数min=i,从这个数的下一个数开始扫描直到最后一个数,并记录下最小数的位置min,扫描结束后如果min不等于i,说明假设错误,则交换min与i位置上数。
*/
function sort_simple_selection($list)
{
$len = count($list);
if(empty($len)) return $list;
for($i = 0;$i < $len; $i++)
{
$min = $i;
for($j = $i + 1; $j < $len; $j++)
{
//if($list[$j] > $list[$min]) // 从大到小
if($list[$j] < $list[$min]) // 从小到大
{
$min = $j;
}
echo implode(',',$list)."#pos=".($min + 1)." min=".$list[$min]."<br/>";
}
if($min != $i)
{
$temp = $list[$i];
$list[$i] = $list[$min];
$list[$min] = $temp;
}
echo "-------------------------<br/>";
}
}
$list = array(4,3,2,1,5,7,3,7);
$list = sort_simple_selection($list);

相关文章

PHP Header用于页面跳转时的几个注意事项

前言 本文介绍的是在PHP中用header("location:test.php")进行跳转要注意以下几点,有助于解决一些新手经常遇到的问题 一、location和“:”号间不能有空格,...

PHP7.1实现的AES与RSA加密操作示例

本文实例讲述了PHP7.1实现的AES与RSA加密操作。分享给大家供大家参考,具体如下: AES: <?php header('Content-Type: text/p...

解决Yii2邮件发送结果返回成功,但接收不到邮件的问题

前言 本文主要介绍的是关于解决Yii2邮件发送返回成功但接收不到邮件问题的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 刚刚用了一下yii邮件发送功能,虽然结果返回成功,但接...

PHP数据流应用的一个简单实例

PHP数据流应用的一个简单实例

复制代码 代码如下: <?php $count = 5; start: if($count < 5) echo "You can try {$count} time, ";...

最新用php获取谷歌PR值算法,附上php查询PR值代码示例

复制代码 代码如下: /* *功能:对URL进行编码 *参数说明:$web_url 网站URL,不包含"http://",例如jb51.net */ function HashURL($...