【问题标题】:Why the time complexity of linked list ( single linked list ) isn't n-1?为什么链表(单链表)的时间复杂度不是n-1?
【发布时间】:2022-01-05 14:59:29
【问题描述】:

我的观点是,当指针在链表中遍历到 n-1 位置时,他很容易得到 nth 的值,因为我们知道 的地址>第n个指针位于第n-1个位置。因此,时间复杂度必须是 n-1 而不是 n

【问题讨论】:

  • 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: pointers time linked-list time-complexity singly-linked-list


【解决方案1】:

任何大 O 符号总是描述一个上限。这意味着尽管n-1 可以更准确地描述复杂性,但它仍然包含在O(n) 中。
其次,在描述 Big O 复杂度类时,任何常数因子 (-1) 都会从方程中减少,因为对于任何体面的大 n,任何常数因子都不会对结果产生任何显着影响。
n 的任何常数因子相同,被删除。 O(3n+5)O(n) 的复杂度等级相同。

这两者结合是您将复杂性描述为 O(n) 而不是 O(n-1) 的原因,尽管它在技术上可能仍然正确且更准确。

【讨论】:

    猜你喜欢
    • 2017-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-02
    • 1970-01-01
    • 2020-09-11
    • 2021-01-01
    相关资源
    最近更新 更多