采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
【问题】
在视频第8分钟,提到testQueue的时间复杂度,对于ArrayQueue来说,enqueue时间复杂度是0(1),dequeue时间复杂度是O(n),这个理解,不理解为什么由前面可以推导出testQueue的时间复杂度是O(n^2)。
我理解当N无穷大时,enqueue的时间(因为O(1)是个常数)可以忽略,所以testQueue的时间复杂度等于O(n),麻烦老师看看我理解哪里有问题,谢谢。
因为每一次dequeue时间复杂度是O(n),而testQueue用for循环dequeue了n次,所以是O(n^2) .
非常感谢,理解了。
谢谢你的回答:)
是的:)我说的O(n^2),是对于整个testQueue这个方法计算的,而不是我们队列中的一次操作:)
登录后可查看更多问答,登录/注册
动态数组/栈/队列/链表/BST/堆/线段树/Trie/并查集/AVL/红黑树…
10.5k 16
1.4k 17
1.4k 14
1.3k 14