![]() |
1
12
使用现有内容:
这支持惰性求值(意味着在处理生成的可枚举对象之前,不会处理Input)。它在内部使用哈希集(当前实现为Dictionary)来跟踪已经找到的项(这发生在枚举器内部)。
为什么这很重要?因为如果发生以下情况,任何执行完整枚举的操作都可能会导致不必要的性能影响
如果在调用此函数和枚举结果之间
|
![]() |
2
4
Jens的解决方案是可行的,但它的运行时间相当慢,即O(n 2. ).
如果你有一个长长的清单,一个更好的选择是
快速排序的运行时间为O(n log n)+搜索的运行时间O(n logn)。 请参见以下内容 伪 代码(现在无法访问Delphi)。
问题
好处(或为什么字典很烂)
只有当列表庞大时,格言的渐进运行时间才会更好。 |
![]() |
3
3
出于性能原因,我建议使用
|
![]() |
4
0
使用中间列表:
这显然不是最佳的解决方案,请参阅其他答案以获得更好的替代方案。 |
![]() |
Marcoscdoni · 突出显示DBGrid中的特定文本 8 年前 |
![]() |
Adam · 如何在delphi项目中执行两个线程 9 年前 |
![]() |
Nobby · 将更改的位图分配给VCL样式时发生访问冲突 9 年前 |
![]() |
Jens Mühlenhoff · 如何从列表中删除所有重复项? 9 年前 |
|
Jan de Jonge · 帮助洞察的新路线 9 年前 |