|
|
1
11
我认为钻头移动最快。未经测试,但我认为以下内容应该很快(至少和IEnumerable一样快)。
如果您希望它更快,您可以考虑返回
|
|
|
2
31
这个 最快的 方式?查找表几乎总是最快的方法。构建一个包含40亿个条目的int[]数组,每个int对应一个条目,其中包含一个所需数字的数组。当然,初始化表需要一些时间,但是查找速度非常快。 我注意到,你还没有说“最快”是什么意思,并且没有足够的精确性让任何人能够真正回答这个问题。它是指包括启动时间在内的最快摊余时间,还是假设启动成本可以忽略的边际查找时间?我的解决方案草图假定后者。 显然,一台具有20亿字节地址空间的32位机器将没有足够的地址空间来存储300亿字节的数组。给自己买一台64位的机器。如果您希望它运行得更快,那么您至少还需要安装那么多的物理内存——否则分页会使您丧命。 我当然希望您在每次查找中节省的几纳秒值得购买所有额外的硬件。或者也许你没有 事实上 想要 最快的 方式? -) |
|
|
3
6
这个
第一个(最快-10米跑2.35秒,范围1到10米):
另一个版本(第二快-10米跑3秒,范围1到10米):
|
|
|
4
5
在安全的C代码中,一个字节值的查找数组应该尽可能快。将4个字节中的每一个从整数中移出(根据需要强制转换为uint),并索引到数组中。 查找数组的元素可以是一个指数数组,或者,取决于您对位的处理方式,可能是可以工作的委托。 |
|
|
5
3
只是为了好玩,这里有一个使用LINQ的一行程序。
这当然不是最快的方法,尽管它并不落后于其他答案
对于更快的解决方案,我可能返回一个普通的集合,而不是使用迭代器块。像这样:
|
|
|
6
2
最快的输入分配是什么?如果通常只设置一个位,那么这可能比循环查找设置位更快。 从已接受的答案中找出 position of the least significant bit 从 Bit Twiddling Hacks ,这个解决方案循环、查找、清除和返回每个连续的最低有效位的位置。
它的循环次数与位集的循环次数相同。 |
|
|
7
1
我想比特移位(<<)是最快的。 |
|
8
0
如果你不会在一个小C++上窒息:
|
|
|
A B · C#Excel自动调整列避免长文本时出错 1 年前 |
|
|
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 1 年前 |
|
Aycon · 在工厂方法中释放部分创建的对象的正确方法是什么? 1 年前 |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |