问题
单项选择题
冒泡排序在最坏的情况下的比较次数是
A.n(n+1)/2
B.nlog2n
C.n(n-1)/2
D.n/2
答案
参考答案:C
解析: 冒泡排序的基本思想是对当前未排序的全部节点自上而下地依次进行比较和调整,让键值较大的节点下沉,键值较小的节点往上冒。也就是说,每当比较两个相邻节点后发现它们的排列与排序要求相反,就要将它们互换。
对n个节点的线性表采用冒泡排序,冒泡排序的外循环最多执行n-1遍。第一遍最多执行n-1次比较,第二遍最多执行n-2次比较,以此类推,第n-1遍最多执行1次比较。因此,整个排序过程最多执行n(n-1)/2次比较。