第7题 考虑最坏情况下冒泡排序算法的时间复杂度,T(n)为待排序数字的数目为n的复杂度,则其递推关系式为T(n)=T(n-1)+n,T(0)=1。
【答案】 错误
【考纲知识点】 冒泡排序算法的时间复杂度分析以及递推关系式的建立
【解析】
冒泡排序最坏情况分析
在最坏情况下,冒泡排序需要对一个长度为n的数组进行n-1轮比较和交换操作。每一轮中,需要比较的次数逐渐减少。对于长度为n的数组,第一轮需要比较n-1次,第二轮需要比较n-2次,以此类推,最后一轮需要比较1次。
递推关系式分析
如果要建立递推关系式,对于长度为n的数组进行冒泡排序,可看作先对长度为 n-1的数组进行冒泡排序(其复杂度为T(n-1)),然后再进行n-1次比较和可能的交换操作。所以递推关系式应该是T(n)=T(n-1)+(n-1),而不是T(n)=T(n-1)+n。
初始条件分析
当n=0时,数组为空,不需要进行任何排序操作,所以T(0)=0,而不是T(0)=1。
综上所述,题目中的说法是错误的。