相关疑难解决方法(0)

在Find,Single,First中,哪一个最快?

我想最小化从列表中检索单个唯一元素所需的时间.哪一个是最快的方法Find,SingleFirst?请注意,搜索键是唯一的ID.

c#

20
推荐指数
2
解决办法
8236
查看次数

List.Contains()的循环实现看起来比内置的快.是吗?如果是这样,为什么?

(这个问题来自于此处开始的讨论)

我是比较时机与寻找true一个值List<bool>使用List.Contains()与那些手卷循环.

我看到其他人报道的结果不同.我已经在几个系统上尝试过它,在我尝试过的所有系统上,循环看起来要快2到3.5倍.这些系统的范围从运行XP.4的笔记本电脑到运行Windows 8和.Net 4.5的最新PC.

其他人报告的结果不同,即List.Contains()与循环速度大致相同或略快于循环.

这是我的测试代码.

using System;
using System.Collections.Generic;
using System.Diagnostics;

namespace ConsoleApplication1
{
    internal class Program
    {
        private static void Main()
        {
            int size = 10000000;
            int count = 10;
            List<bool> data = new List<bool>(size);

            for (int i = 0; i < size; ++i)
                data.Add(false);

            var sw = new Stopwatch();

            for (int trial = 0; trial < 5; ++trial)
            {
                sw.Restart();

                for (int i = 0; i …
Run Code Online (Sandbox Code Playgroud)

c# optimization generic-list

12
推荐指数
1
解决办法
2053
查看次数

标签 统计

c# ×2

generic-list ×1

optimization ×1