冒泡排序(Bubble Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。它的基本思想就是两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 例如:初始序列3,6,4,2,11,10,5;从头开始,两两相比...
分类:
其他好文 时间:
2014-08-21 15:07:44
阅读次数:
188
基本原理
冒泡排序(Bubble Sort,台湾另外一种译名为:泡沫排序)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
这样说还不是很明白,先看张图:
算法步骤:
1)比较相邻的...
分类:
编程语言 时间:
2014-08-20 16:27:12
阅读次数:
261
排序算法—冒泡排序排序算法—冒泡排序Table of Contents1 问题描述2 冒泡排序(Bubble)2.1 冒泡排序(一)2.2 冒泡排序(二)2.3 冒泡排序(三)2.4 冒泡排序(四)3 阅读参考1 问题描述引子 排序是数据结构中十分重要的一章,排序算法有很多种,一直没时间整理而且很多...
分类:
其他好文 时间:
2014-08-18 21:45:02
阅读次数:
366
关于冒泡排序时间复杂性,大家都知道最坏情况下为O(n^2)为什么最好情况下为O(n),很多人有疑问,下面我们就来分析一下:
首先大家看看下面两种冒泡排序的方法:
方法一:
//冒泡排序
template class T>
void Bubble(T a[],int n)
{
//把数组a[0:n-1]中最大的元素冒泡移到右边
for(int i=...
分类:
其他好文 时间:
2014-08-17 09:11:52
阅读次数:
199
#include void bubble_sort(int a[],int n)//n为数组a的元素个数 { int i,j,temp; for(j=0;ja[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; ...
分类:
其他好文 时间:
2014-08-16 11:09:40
阅读次数:
222
#include void bubble_sort(int a[],int n)//n为数组a的元素个数 { int i,j,temp; for(j=0;ja[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; ...
分类:
其他好文 时间:
2014-08-16 11:02:00
阅读次数:
235
冒泡排序的基本思想:
在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。
关于程序中4中冒泡排序写法的说明:
bubble_sort1:基本的冒泡排序的写法。
bubble_sort2:基本冒泡排序的不同写法,基本的冒泡排序是每...
分类:
其他好文 时间:
2014-08-15 12:51:44
阅读次数:
211
1 #include 2 3 void bubble(int *arr, int length) 4 { 5 int i, j, tmp; 6 for(i=0;iarr[j+1])11 {12 tmp = arr[j];1...
分类:
其他好文 时间:
2014-08-13 18:09:06
阅读次数:
213
def bubble_sort(list):
for i in range(len(list)):
for j in (range(i,len(list))):
if list[j]
temp = list[j]
list[j] = list[i]...
分类:
编程语言 时间:
2014-08-12 17:27:54
阅读次数:
216
<?php
//php algorithm bubble
// 3, 8 , 99, 75, 23, 1, 29, 51, 24, 13, 78.
//第一次循环,如果有小元素就往后走,即冒泡,这样循环一次,最小的1就冒泡到最顶部了,即$array[10]=1;
//第二次循环,如果有小元素就往后走,及冒泡,这样循环一次,第二小的3就冒泡到倒数第二的位置了,即$array[9]=3;
/...
分类:
Web程序 时间:
2014-08-06 23:12:12
阅读次数:
249