相关疑难解决方法(0)

Haskell:为什么Int的性能比Word64差,为什么我的程序远比C慢?

我正在阅读一篇关于Haskell在使用Collat​​z猜想有多缓慢的文章,它基本上表明如果你将三个加一个乘以一个奇数,或者将一个偶数除以一个,你最终会得到一个.例如,3 - > 10 - > 5 - > 16 - > 8 - > 4 - > 2 - > 1.

本文中给出的程序是计算给定范围内最长的Collat​​z序列.C版本是:

#include <stdio.h>

int main(int argc, char **argv) {
   int max_a0 = atoi(argv[1]); 
   int longest = 0, max_len = 0;
   int a0, len;
   unsigned long a;

   for (a0 = 1; a0 <= max_a0; a0++) {
      a = a0;
      len = 0;

      while (a != 1) {
         len++;
         a = ((a%2==0)? a : 3*a+1)/2;
      } …
Run Code Online (Sandbox Code Playgroud)

optimization performance haskell

17
推荐指数
1
解决办法
1027
查看次数

标签 统计

haskell ×1

optimization ×1

performance ×1