在刷题的时候有关时间复杂度的题的题目还是很多的。但是这类题目来来回回反反复复考的就是那么些知识点,我们下面我就将他整理出来以供后面复习。
1.常见排序算法的时间复杂度。
稳定性:若等待排序的序列中,存在多个具有相同关键字的记录,经过排序,这些记录的相对次序保持不变,则称该算法是稳定的;若经过排序,记录的相对次序发生了改变,则称算法是不稳定的。
举个例子:如果原来序列是1,2,3,3*,4,我们可以看到这里面有两个3,给第二个3做了*标记,如果排序后是1,2,3*,3,4,虽然排序结果是正确的,但是原来两个3的相对位置发生了改变,所以这种排序就是不稳定的。
稳定的排序算法:冒泡排序,插入排序,归并排序和基数排序
不稳定的排序算法:选择排序,快速排序、希尔排序和堆排序
精简排序有:归并排序,插入排序