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


Posted in PHP onAugust 09, 2011
<?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 相关文章推荐
转换中文日期的PHP程序
Oct 09 PHP
PHP一些常用的正则表达式字符的一些转换
Jul 29 PHP
Windows IIS PHP 5.2 安装与配置方法
Jun 08 PHP
JS与PHP向函数传递可变参数的区别实例代码
May 18 PHP
用PHP实现的四则运算表达式计算实现代码
Aug 02 PHP
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
Sep 28 PHP
解析PHP强制转换类型及远程管理插件的安全隐患
Jun 30 PHP
php实现压缩多个CSS与JS文件的方法
Nov 11 PHP
[原创]php实现 data url的图片生成与保存
Dec 04 PHP
PHP微信开发之微信录音临时转永久存储
Jan 26 PHP
php实现文章评论系统
Feb 18 PHP
PHP join()函数用法与实例讲解
Mar 11 PHP
php的urlencode()URL编码函数浅析
Aug 09 #PHP
php简单的会话类代码
Aug 08 #PHP
php中将时间差转换为字符串提示的实现代码
Aug 08 #PHP
兼容firefox,chrome的网页灰度效果
Aug 08 #PHP
用php解析html的实现代码
Aug 08 #PHP
php中设置多级目录session的问题
Aug 08 #PHP
ThinkPHP 防止表单重复提交的方法
Aug 08 #PHP
You might like
vs中通过剪切板循环来循环粘贴不同内容
2011/04/30 PHP
php策略模式简单示例分析【区别于工厂模式】
2019/09/25 PHP
关于js new Date() 出现NaN 的分析
2012/10/23 Javascript
js调用webservice中的方法实现思路及代码
2013/02/25 Javascript
js调试系列 控制台命令行API使用方法
2014/06/18 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
2014/11/28 Javascript
jquery判断input值不为空的方法
2016/06/05 Javascript
jQuery插件Validation快速完成表单验证的方式
2016/07/28 Javascript
bootstrap datepicker限定可选时间范围实现方法
2016/09/28 Javascript
vue组件Prop传递数据的实现示例
2017/08/17 Javascript
jQuery获取所有父级元素及同级元素及子元素的方法(推荐)
2018/01/21 jQuery
详解基于Koa2开发微信二维码扫码支付相关流程
2018/05/16 Javascript
vue-cli3.0+element-ui上传组件el-upload的使用
2018/12/03 Javascript
js 使用ajax设置和获取自定义header信息的方法小结
2020/03/12 Javascript
在Vue中使用Select选择器拼接label的操作
2020/10/22 Javascript
[02:46]解说DC:感谢430陪伴我们的DOTA2国际邀请赛岁月
2016/06/29 DOTA
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
Python 正则表达式入门(初级篇)
2016/12/07 Python
python实现将文件夹下面的不是以py文件结尾的文件都过滤掉的方法
2018/10/21 Python
浅谈Python中函数的定义及其调用方法
2019/07/19 Python
Python函数式编程指南:对生成器全面讲解
2019/11/19 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
Python变量格式化输出实现原理解析
2020/08/06 Python
Html5原生拖拽相关事件简介以及基础实现
2020/11/19 HTML / CSS
h5页面背景图很长要有滚动条滑动效果的实现
2021/01/27 HTML / CSS
如果重写了对象的equals()方法,需要考虑什么
2014/11/02 面试题
营销部内勤岗位职责
2014/04/30 职场文书
广告宣传策划方案
2014/05/21 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
2014医学院领导干部四风对照检查材料思想汇报
2014/09/16 职场文书
2014年小学班主任工作总结
2014/11/08 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
30岁前绝不能错过的10本书
2019/08/08 职场文书
导游词之徐州云龙湖
2019/11/19 职场文书
Go遍历struct,map,slice的实现
2021/06/13 Golang
Redis读写分离搭建的完整步骤
2021/09/14 Redis