Sha*_*awn 5 algorithm big-o time-complexity data-structures
我在网上找了两篇文章:
让我感到困惑的是他们使用的术语索引和访问。他们指的是同一件事吗?
以数组为例:
第一个说访问的大 O 是 O(1)。第二个说索引的大 O 是 O(1)。所以我假设他们都说给定一个索引x,你可以得到array[x]O(1) 中的值。
以哈希表为例:
第一个说 Big O of Access 是 N/A。我认为这是因为使用哈希表,您只能通过键进行搜索。您不会通过索引检索值。但是第二个说索引的大 O 是 O(1)。也许这次是指搜索?
现在以二叉树为例:
第一个:访问是 O(logN)。第二个:索引是 O(logN)。
什么?
所以现在他们都指的是搜索?您不能通过索引从二叉树中检索值,对吗?
请帮我澄清一下。谢谢!
在上面的文章中,索引和访问意味着同一件事,它们都描述了访问元素所需的渐近复杂性。
进一步来说:
因此,在上述文章中的哈希表和二叉搜索树中,访问索引被称为搜索。