交换类排序

交换类排序:基本思想:通过交换逆序元素进行排序的方法。1、冒泡排序法:反复扫描待排序记录序列,在扫描的过程中顺次比较相邻的两个元素的大小,若逆序则交换位置。将待排序的记录看成竖着排列的“气泡”,键值较重的记录比较重,从而往下沉。2、快速排序:以某一元素v作为基准,将待排序列分成前后两段(前段元素均小于v,后段元素均大于或等于v)。再分别对前段、后段元素作快速排序(递归)。算法分析:若序列长度为n,划分一次,元素比较n-1次,则进行一次划分,时间复杂度为O(n)。最坏情况:划分产生的两个序列分别包含n-1个元素和1个元素的时候,时间复杂度为O(n2)。最好情况:每次划分所取得基准都恰好为中值,即每次划分都产生2个大小为n/2的区域。时间复杂度为O(nlog2n).

你可能感兴趣的:(交换类排序)