常见排序算法(三)

冒泡排序,非常经典的排序方法。
原理:将序列划分为无序和有序区,不断通过交换较大元素至无序区尾完成排序。
要点:设计交换判断条件,提前结束以排好序的序列循环。
实现:

<!-- lang: cpp -->
Void BubbleSort(Node L[])
{
   int i ,j;
   bool ischanged;//设计跳出条件
   for(j=n;j<0;j--)
   {
        ischanged =false;
        for(i=0;i<j;i++)
   {
   if(L[i]>L[i+1])//如果发现较重元素就向后移动
   {
        int temp=L[i];
        L[i]=L[i+1];
        L[i+1]=temp;
        ischanged =true;
    }
}
   if(!ischanged)//若没有移动则说明序列已经有序,直接跳出
    break;
}
}

你可能感兴趣的:(冒泡排序)