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

 更新时间:2011年08月09日 12:09:51   作者:  
一次选定数组中的每一个数,记下当前位置并假设它是从当前位置开始后面数中的最小数min=i,从这个数的下一个数开始扫描直到最后一个数,并记录下最小数的位置min,扫描结束后如果min不等于i,说明假设错误,则交换min与i位置上数。
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

复制代码 代码如下:

<?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 Exception异常处理详解

    php Exception异常处理详解

    异常经常被用来处理一些在程序正常执行中遇到的各种类型的错误。比如做数据库链接时,你就要处理数据库连接失败的情况。使用异常可以提高我们程序的容错特性,从而使我们的应用程序更加的稳定和健壮
    2022-11-11
  • PHP抽象类 介绍

    PHP抽象类 介绍

    对于PHP程序员来说,最为难掌握的一点要数PHP抽象类应用这一块知识点。作为一个新手其实也还没有到要用面向对象的知识去编程,但以后进行开发,使用类进行封装或者使用接口之类,把程序进行各种模块式的开发,这当然是必然的
    2012-06-06
  • PHP获取服务器端信息的方法

    PHP获取服务器端信息的方法

    这篇文章主要介绍了PHP获取服务器端信息的方法,通过一个自定义函数实现对服务器端系统版本、PHP版本、Apache版本等信息的获取,是非常实用的技巧,需要的朋友可以参考下
    2014-11-11
  • php的闭包(Closure)匿名函数初探

    php的闭包(Closure)匿名函数初探

    本文主要给大家介绍的是php5.3引入的PHP匿名函数,也就是闭包(Closure),以及闭包的作用,非常详细,这里推荐给有需要的小伙伴们。
    2016-02-02
  • php intval函数用法总结

    php intval函数用法总结

    在本篇内容里小编给大家总结了关于php intval函数用法以及相关知识点总结,需要的朋友们跟着学习下。
    2019-04-04
  • PHP实现股票趋势图和柱形图

    PHP实现股票趋势图和柱形图

    这篇文章主要介绍了PHP实现股票趋势图和柱形图,本文效果基于pchart类库实现,给出实现代码和效果图,需要的朋友可以参考下
    2015-02-02
  • PHP+MySQL删除操作实例

    PHP+MySQL删除操作实例

    这篇文章主要介绍了PHP+MySQL删除操作的方法,实例分析了MySQL删除信息的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-01-01
  • php+Ajax无刷新验证用户名操作实例详解

    php+Ajax无刷新验证用户名操作实例详解

    这篇文章主要介绍了php+Ajax无刷新验证用户名操作,简单介绍了ajax的原理并结合实例形式分析了php结合ajax无刷新验证用户名相关操作技巧,需要的朋友可以参考下
    2019-03-03
  • PHP类继承 extends使用介绍

    PHP类继承 extends使用介绍

    我们在文章中为大家详细介绍了有关PHP类继承 extends的实现方法,希望对于新手来说能够提升他们在PHP语言编程中的能力
    2014-01-01
  • php数据库密码的找回的步骤

    php数据库密码的找回的步骤

    php数据库密码的找回的步骤,需要的朋友可以参考下。
    2011-01-01

最新评论

?


http://www.vxiaotou.com