求一百万以内素数GO语言和PHP语言的性能测试

go语言代码

package main

import "fmt"
import "time"

func main() {
    start := time.Now().UnixNano() / 1e6
   /* 定义局部变量 */
   var i, j int

   for i=2; i < 1000000; i++ {
      for j=2; j <= (i/j); j++ { if(i%j==0) { break; // 如果发现因子,则不是素数 } } if(j > (i/j)) {
         //fmt.Printf("%d  是素数\n", i);
      }
   }
    end := time.Now().UnixNano() / 1e6
    times := end - start;
    fmt.Printf("这个脚本执行的时间为 %d microseconds \n", times);
}


执行时间

这个脚本执行的时间为 661 microseconds

这个脚本执行的时间为 678 microseconds

这个脚本执行的时间为 683 microseconds

PHP语言代码

<?php
$time_start = microtime(true);
for ($i=2; $i < 1000000; $i++) {
    for ($j=2; $j <= ($i/$j); $j++) {
        if($i%$j==0) {
            break; // 如果发现因子,则不是素数
        }
    }
    if($j > ($i/$j)) {
        //sprintf("%d  是素数\n", $i);
        //echo "$i 是素数\n";
    }
}
$time_end = microtime(true);
//相减得到运行时间
$time = ($time_end - $time_start)*1000;

echo "这个脚本执行的时间为 $time microseconds\n";

执行时间

这个脚本执行的时间为 3556.6558837891 microseconds

这个脚本执行的时间为 3535.5389118195 microseconds

这个脚本执行的时间为 3535.5389118195 microseconds

在没做任何优化和加速的情况下,从数据看PHP的执行效率要远低于GO。

RIPRO主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
保险小知识 » 求一百万以内素数GO语言和PHP语言的性能测试

发表评论

提供最优质的资源集合

立即查看 了解详情