排序算法总结

摘要: 1、冒泡排序 冒泡排序是一种简单的排序方法,算法如下: 1. 首先将所有待排序的数字放入工作列表中。 2. 从列表的第一个数字到倒数第二个数字,逐个检查:若某一位上的数字大于他的下一位,则将它与它的下一位交换。

排序算法总结

 

1、冒泡排序

排序算法总结

冒泡排序是一种简单的排序方法,算法如下:
1. 首先将所有待排序的数字放入工作列表中。
2. 从列表的第一个数字到倒数第二个数字,逐个检查:若某一位上的数字大于他的下一位,则将它与它的下一位交换。
3. 重复2号步骤(倒数的数字加1。例如:第一次到倒数第二个数字,第二次到倒数第三个数字,依此类推...),直至再也不能交换。
用C语言实现如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

int BubbleSort(int *a, int n)    //a是待排序的整型数组,n是待排序数组的元素个数

<a target="_blank" href="https://www.ancii.com/link/v1/T7hz10usmNBMWW4x2VFv78QStJQyRawoWBPl7gfAdueVoFEAVvHHlwHc47VEUJcG/" rel="nofollow" title="{">{</a>

   int i,j,temp;

    for(j=0;j<n-1;j++)

        for(i=0;i<n-1-j;i++)

        {

            if(a[i]>a[i+1])        //数组元素大小按升序排列

            {

                temp=a[i];

                a[i]=a[i+1];

                a[i+1]=temp;

            }

        }

<a target="_blank" href="https://www.ancii.com/link/v1/T7hz10usmNBMWW4x2VFv78QStJQyRawoWBPl7gfAdueVoFEAVvHHlwHc47VEUJcG/" rel="nofollow" title="}">}</a>

 


2、插入排序

排序算法总结

插入排序也是一种简单排序方法,算法如下:
1. 从第一个元素开始,认为该元素已经是排好序的。
2. 取下一个元素,在已经排好序的元素序列中从后向前扫描。
3. 如果已经排好序的序列中元素大于新元素,则将该元素往右移动一个位置。
4. 重复步骤3,直到已排好序的元素小于或等于新元素。
5. 在当前位置插入新元素。
6. 重复步骤2。
用C实现如下:

排序算法总结​​​​​​​

原文链接