三个简单的算法——选择排序
来源:互联网 发布:油气田开发工程 知乎 编辑:程序博客网 时间:2024/06/10 23:33
(算法用php实现)
先贴代码
选择排序
<?php echo "<br/>快速排序:<br/>"; $arr = array(2,3,5,1,7,3,9,12,324,0); $n = count($arr); for($i = 0;$i < $n;++$i){ $max = $arr[0]; $pos = 0; for($j = 0;$j < $n - $i;++$j){ if($arr[$j] > $max){ $max = $arr[$j]; $pos = $j; } } $t = $arr[$n-$i-1]; $arr[$n-$i-1] = $max; $arr[$pos] = $t; } echo "排序后:<br/>"; print_r($arr);?>
显示结果:
选择排序简介:
假设数组有n个元素,第一次找出最大的元素和它的下标,与数组末尾那个元素进行交换;第二次遍历找出目前n-1个元素中最大的元素和它的下标,并且与目前最后一个交换。依此类推,直至只剩最后一个元素。
要求:
1:假设数组元素个数为n个;
2:进行查找最大值的趟数为n-1;
3:每一趟都要求出剩余元素中的最大值,每一次剩余元素个数都比上一次少一个,第一次一共有n个元素;
4:每一趟找出最大元素之后,都要进行交换,即找出最大元素与此时剩余数组元素的最后一个进行交换,交换是通过元素的数组下标来实现的。
表格演示:
1 0
- 三个简单的算法——选择排序
- 三个简单的算法—冒泡排序
- 三个最简单的排序算法:插入、冒泡、选择
- 排序算法——简单选择排序
- 排序算法——简单选择排序
- 排序算法——简单选择排序
- 排序算法之选择排序——简单选择排序
- 算法之选择排序——简单选择排序
- 简单的选择排序算法
- 三个简单排序算法的java实现
- 基础算法——简单选择排序
- 简单的排序算法——插入排序,选择排序,交换排序(冒泡排序,快速排序)
- 排序算法---简单的选择排序
- 简单排序算法实现——选择排序
- 排序算法(一)——简单选择排序
- 排序算法(五)——简单选择排序
- 排序算法5——简单选择排序
- 排序算法——简单选择排序(Python&Java)
- vmstat命令动态监控系统的状态
- ARC指南1 - strong和weak指针
- 用grpc_cb代替grpc++
- Iterm2 && Oh-my-zsh配置mac终端
- 这个发现是否会是RSA算法的BUG、或者可能存在的破解方式?
- 三个简单的算法——选择排序
- JavaScript基本概念(二)
- 2016总结与2017展望
- 蓝桥杯之奇怪的比赛
- Implement strStr()
- maven下载源代码
- linux c学习笔记----管道文件(pipe,popen,mkfifo,pclose,dup2)
- Redis简单示例
- JavaScript基本概念(三)