老师冒泡排序移动次数为什么时3*n(n-1)/2,移动次数和交换次数有什么区别
来源:1-1 冒泡排序的基本思想
眼睛眯起来
2021-01-04 21:18:50
0000
1回答
最多 n(n - 1) / 2 次交换,每次交换是三条指令。所以你说的 3* n (n - 1) / 2 应该是运行的指令次数。
但是我个人不建议纠指令次数。原因我在课程介绍复杂度的时候介绍过:https://class.imooc.com/lesson/1577#mid=36087
你很难说现代编程语言的一个语句是一个指令,可能是多个指令。
对于基于比较的排序算法,关键是比较次数。
继续加油!:)
相似问题