gpt4 book ai didi

C# 列表方法 : ElementAt(index) vs Find(content)

转载 作者:太空宇宙 更新时间:2023-11-03 19:23:07 26 4
gpt4 key购买 nike

我目前正在构建一个非常依赖效率的数据结构。

任何人都可以向我提供有关 Find(item => item.X = myObject.Property) 方法实际工作原理的资源吗?它是否在所有元素中线性迭代直到找到该元素?

如果我知道 myObject 的索引并使用 ElementAt(index) 会怎么样?

请问这两个中哪个最有效?

最佳答案

来自 MSDN documentation on List<T>.Find

This method performs a linear search; therefore, this method is an O(n) operation, where n is Count.

想象 ElementAt针对 IList 进行了优化并将做一个直接索引。但是由于您显然正在使用 List 中的这个对象不管怎样,具体类型,为什么不直接做一个索引呢?像这样:

var result = list[index];

如果您已经知道索引,则搜索没有意义。直接去做吧。

关于C# 列表方法 : ElementAt(index) vs Find(content),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10728828/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com