由于它是一个链表,因此确定大小将是O(N) *** 作,因为您必须遍历整个列表。
此外,您错误地计算了.get()的时间复杂度。对于big-O,最重要的是 最坏情况的
计算。对于链接列表,检索的最坏情况是元素位于列表的末尾,因此也是O(N)。
总而言之,您的算法每次迭代将花费O(2N)= O(N)时间。我希望您可以从那里找出整个循环的时间复杂度。
顺便说一句,在现实世界中,您可能只想在循环之前计算一次大小,这恰恰是因为它可能效率很低。显然,如果列表的大小可以在循环期间更改,则这不是一个选择,但是这种非变异算法看起来并非如此。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)