交换排序之冒泡排序
来源:互联网 发布:安邦 知乎 编辑:程序博客网 时间:2024/05/16 02:12
交换排序的主要思路就是在排序过程中,不断比较待排序序列中相邻的两个数据,如果次序相反,则将其位置交换,从而达到排序的目的,冒泡排序和快速排序都属于交换排序
下面我们介绍冒泡排序的基本原理:
冒泡排序是一种比较简单的排序算法,基本思想就是对所有的相邻的记录的关键字进行比较,如果次序不对就将其交换,从而最终使其达到一致的效果;
由于排序过程中大的数据下沉,小的数据上浮,所以称之为冒泡排序:
待排序序列 第一趟 第二趟 第三趟 第四趟 第五趟
51 333333 33 17
33 515151 17 28
62 626217 28 33
96 871728 51 51
87 172851 51 51
17 285162 62 62
28 518787 87 87
51 969696 96 96
最多经过n趟排序就可以达到整个序列的有序状态
总的时间复杂度为o(n2);
php代码
<?php
/**
* 冒泡排序
*/
$a = array(1,9,3,22,6,3,2);
$length = count($a);
for ($i = 0;$i<$length;$i++)
{
for ($j = 0; $j < $length - $i;$j++)
{
if(isset($a[$j+1]) && $a[$j] > $a[$j+1])
{
$tmp = $a[$j];
$a[$j] = $a[$j+1];
$a[$j+1] = $tmp;
}
}
}
var_dump($a);
阅读全文
0 0
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之冒泡排序
- 交换排序之--冒泡排序
- 交换排序之冒泡排序
- 交换排序之--冒泡排序,快速排序
- 八大排序 -- 交换排序之【冒泡排序】
- opencv实现简单手指位置识别
- LeetCode-67. Add Binary
- Flex 布局教程
- Junit4入门
- centos5.11安装gcc
- 交换排序之冒泡排序
- 国际化插件vuex-i18n
- Eigen库的配置和基本用法
- Oracle -11g数据库 ---》1、Oracle 表空间
- 这是一篇Android RecyclerView使用介绍哦
- emacs F1 里用man
- MD5加密工具类
- Jmeter基础-关联
- 如何解决p6spy日志记录sql语句重复的问题