内部排序的方法
内排序是指所有的数据已经读入内存,在内存中进行排序的算法。
第一种:比较排序
1、主要有:冒泡排序,选择排序,插入排序,归并排序,堆排序,快速排序等。
2、常见比较排序算法的性能如下图。

4、选择排序也是一种简单直观的排序算法。它的工作原理很容易理解:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置;然后,再从剩余未排序元素中继续寻找最小(大)元素,放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。

6、归并排序是创建在归并操作上的一种有效的排序算法。归并操作步骤如下:申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列设定两个指针,最初位置分别为两个已经排序序列的起始位置比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置重复步骤3直到某一指针到达序列尾将另一序列剩下的所有元素直接复制到合并序列尾

8、快速排序是由东尼·霍尔所发展的一种排序算法。步骤为:从序列中挑出一个元素,作为"基准"(pivot).把所有比基准值小的元素放在基准前面,所有比基准值大的元素放在基准的后面(相同的数可以到任一边),这个称为分区(partition)操作。对每个分区递归地进行步骤1~3,递归的结束条件是序列的大小是0或1,这时整体已经被排好序了。

2、基数排序(radix 衡痕贤伎sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bi荏鱿胫协n sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它的稳定性排序法。
