当前位置>>常用算法>>算法6    
返回首页  
 

 
     
 

算法6 冒泡法排序

 
 
算法描述
冒泡法排序(升序)
算法分析
 基本思想: 将相邻两个数比较,小的调到前头
(1)有n个数(存放在数组a(n)中),第一趟将每相邻两个数比较,小的调到前头,经n-1次两两相邻比较后,最大的数已“沉底”,放在最后一个位置,小数上升“浮起”;
(2)第二趟对余下的n-1个数(最大的数已“沉底”)按上法比较,经n-2次两两相邻比较后得次大的数;
(3)依次类推,n个数共进行n-1趟比较,在第j趟中要进行n-j次两两比较。

代码如下:

For i = 1 To n - 1
   For j = 1 To n-i
        If a(j) > a(j+1) Then
           temp=a(j): a(j)=a(j+1): a(j+1)=temp
        End if
   Next j
Next i