如果我想计算具有数亿个数字(正整数)的数字,哪种编程语言最适合?
目前我正在使用python并且脚本正在运行并且编码很容易,但我担心它的速度。
我根本不太了解装配,所以虽然它可能是最快的,但我宁愿不使用它。 C是最好的选择吗?
我必须使用的具体操作是*, - ,%(mod),取幂,等式测试(if语句),基本循环和某种输出功能(例如控制台输出)。
非常感谢。
答案 0 :(得分:4)
您可以将GMP与普通C一起使用,但请注意,许多动态语言也将它用于任意精度数字,python也是如此。使用C可能无法获得太多收益。
答案 1 :(得分:2)
带有C / C ++的GMP库。
答案 2 :(得分:0)
这是您要阅读的资源。这反驳了C最快的论点,除非您使用C99限制功能。如果C ++比C更快的话。当两个独立但顺序的操作'read'引用相同的内存位置时,它真正归结为编译器的理解。这允许编译器重新排序操作以进行优化。看来Fortran最擅长这样做。
http://en.wikipedia.org/wiki/Pointer_aliasing
你也可以在这里看到Fortran在Mandelbrot例程中吹走了C ++。但是当谈到文本操作时,C ++似乎是顶级的。