冒泡排序
将一串未完成排序的数列中相邻两位数字按如图方法依次比较大小,并将较大的数放在后一位中,直到将最大的数移位到末尾。并重复上述步骤,依次将较大的数放到数列的后面,以此完成排序。
将一串未完成排序的数列中相邻两位数字按如图方法依次比较大小,并将较大的数放在后一位中,直到将最大的数移位到末尾。并重复上述步骤,依次将较大的数放到数列的后面,以此完成排序。
核心代码:
选择排序
将一串未完成排序的数列中的第一位与后面的各位依次比较大小,并将较小的数放在第一位,完成最小数的提取;再将第二位的数与后面的各位依次比较大小,并将较小的数放在第二位……
以此类推,完成数列从小到大的排序
核心代码:
插入排序
相较于前两种排序效率更高,但也相对复杂点
首先,将一二两位数比较大小,小的放前面,大的放后面。之后将第三位数与第二位数比较,如果后者大,则将后者向后移一位,反之保持不变;如果后移,再将第三位数与第一位比较,如依然果后者大,也将后者向后移一位,并将基准数放入第一位,反之放入第二位。以此类推完成排序
核心代码:
快速排序
快速排序是对冒泡排序的一种改进
基本思路:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
核心代码: