冒泡排序_c++

冒泡排序_c++


GitHub

文解

冒泡排序是采用类似气泡上升的方式对数据进行排序.
例如:
我们这里有10个元素,具体数值随意,对每个数值标记上 1~10 的标记.
首先将标记为 1 的数值与标记为 2 的数值进行比较,如果(1)大于(2)我们就将(1)与(2)互换数值,否则不做任何操作,然后将(2)(3)进行相同的比较.当第九次比较结束后我们就可以将这10个数值中的最大数移至最后一位.
此时剩下9个数值,将这9个数值继续进行相同的操作.
8,7,....
最后我们得到一个升序的排序.

图解

冒泡排序图解

代码

void sortArray(short * pArray, short count) {
    for (short i = 0; i < count - 1; i ++) {
        for (short j = 0; j < count - i - 1; j ++) {
            if (pArray[j] > pArray[j + 1]) {
                short temp = pArray[j];
                pArray[j] = pArray[j + 1];
                pArray[j + 1] = temp;
            }
        }
    }
}
posted @ 2017-03-06 16:05  旭宝爱吃鱼  阅读(358)  评论(0编辑  收藏  举报