老师冒泡排序移动次数为什么时3*n(n-1)/2,移动次数和交换次数有什么区别

来源:1-1 冒泡排序的基本思想

眼睛眯起来

2021-01-04 21:18:50

​0000

写回答

1回答

liuyubobobo

2021-01-04

最多 n(n - 1) / 2 次交换,每次交换是三条指令。所以你说的 3* n (n - 1) / 2 应该是运行的指令次数。


但是我个人不建议纠指令次数。原因我在课程介绍复杂度的时候介绍过:https://class.imooc.com/lesson/1577#mid=36087


你很难说现代编程语言的一个语句是一个指令,可能是多个指令。


对于基于比较的排序算法,关键是比较次数。


继续加油!:)

0

算法与数据结构

波波老师5年集大成之作,算法与数据结构系统学习,考试、面试、竞赛通用

2636 学习 · 1090 问题

查看课程