Algorithm 为什么linkedlist的长度属性为O(n)

Algorithm 为什么linkedlist的长度属性为O(n),algorithm,data-structures,linked-list,big-o,time-complexity,Algorithm,Data Structures,Linked List,Big O,Time Complexity,根据这个非常奇妙的说法,“另一方面,大小总是需要n步,因为如果不从头到尾遍历,就无法知道链表中有多少节点。因此,长度是O(n)。” 我想知道为什么在UnorderedList类中不能有一个属性,当分别添加或删除节点时,该属性可以递增或递减。这是本书中“大小”的具体实现吗 当然,您可以将长度保留在变量中,这样就不必反复查询。这本书使用了一个不需要这个加号变量的实现,但是size函数的复杂性是O(N)。大小权衡的复杂性 当然,您可以将长度保留在变量中,这样就不必反复查询。这本书使用了一个不需要这个加

根据这个非常奇妙的说法,“另一方面,大小总是需要n步,因为如果不从头到尾遍历,就无法知道链表中有多少节点。因此,长度是O(n)。”


我想知道为什么在UnorderedList类中不能有一个属性,当分别添加或删除节点时,该属性可以递增或递减。这是本书中“大小”的具体实现吗

当然,您可以将长度保留在变量中,这样就不必反复查询。这本书使用了一个不需要这个加号变量的实现,但是size函数的复杂性是O(N)。大小权衡的复杂性

当然,您可以将长度保留在变量中,这样就不必反复查询。这本书使用了一个不需要这个加号变量的实现,但是size函数的复杂性是O(N)。大小权衡的复杂性

当然,您可以将长度保留在变量中,这样就不必反复查询。这本书使用了一个不需要这个加号变量的实现,但是size函数的复杂性是O(N)。大小权衡的复杂性

当然,您可以将长度保留在变量中,这样就不必反复查询。这本书使用了一个不需要这个加号变量的实现,但是size函数的复杂性是O(N)。大小权衡的复杂性

我想知道为什么在无序列表类中不能有一个属性 可以在添加或删除节点时递增或递减的 分别地这是否特定于本文件中“大小”的实施 书

显然,某些链表实现可能会通过递增或递减数值属性来优化对其项的计数

但在缺乏这种优化的情况下,除了迭代整个集合之外,没有其他方法可以计算链表项

我想知道为什么在无序列表类中不能有一个属性 可以在添加或删除节点时递增或递减的 分别地这是否特定于本文件中“大小”的实施 书

显然,某些链表实现可能会通过递增或递减数值属性来优化对其项的计数

但在缺乏这种优化的情况下,除了迭代整个集合之外,没有其他方法可以计算链表项

我想知道为什么在无序列表类中不能有一个属性 可以在添加或删除节点时递增或递减的 分别地这是否特定于本文件中“大小”的实施 书

显然,某些链表实现可能会通过递增或递减数值属性来优化对其项的计数

但在缺乏这种优化的情况下,除了迭代整个集合之外,没有其他方法可以计算链表项

我想知道为什么在无序列表类中不能有一个属性 可以在添加或删除节点时递增或递减的 分别地这是否特定于本文件中“大小”的实施 书

显然,某些链表实现可能会通过递增或递减数值属性来优化对其项的计数


但是,如果没有这种优化,除了迭代整个集合之外,没有其他方法来计算链表项。

您可以将其作为额外的优化,但是您有一个链表这一事实是无关紧要的。计算链表的长度是
O(n)
。记住这是一个不同的操作。你可以把它作为一个额外的优化,但是你有一个链表这一事实是无关紧要的。计算链表的长度是
O(n)
。记住这是一个不同的操作。你可以把它作为一个额外的优化,但是你有一个链表这一事实是无关紧要的。计算链表的长度是
O(n)
。记住这是一个不同的操作。你可以把它作为一个额外的优化,但是你有一个链表这一事实是无关紧要的。计算链表的长度是
O(n)
。记住这是一个不同的操作。