国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

5大開發(fā)語言同時(shí)計(jì)算素?cái)?shù),誰快?

Ashin / 687人閱讀

摘要:本文中的種開發(fā)語言為以下排名不分先后,只是提筆寫的本文計(jì)算指定一個(gè)數(shù),我們計(jì)算一下從到中的素?cái)?shù),并輸出。

本文中的5種開發(fā)語言為:(以下排名不分先后,只是提筆寫的)

  • C#
  • Python
  • C++
  • Go
  • Java

本文計(jì)算指定一個(gè)數(shù)targetNum,我們計(jì)算一下從1targetNum中的素?cái)?shù),并輸出。

1. 本文在同一臺(tái)虛擬機(jī)中運(yùn)行計(jì)算

2. 各語言實(shí)現(xiàn)

2.1. C#語言

2.1.1. 開發(fā)環(huán)境

  1. VS2019
  2. .Net5.0

2.1.2. 代碼

using System;using System.Diagnostics;namespace CSharpPrimeNumber{    class Program    {        static void Main(string[] args)        {            PrimeNumber(100);            PrimeNumber(200);            PrimeNumber(500);            PrimeNumber(1000);            PrimeNumber(2000);            PrimeNumber(5000);            PrimeNumber(10000);            PrimeNumber(50000);            PrimeNumber(100000);            Console.ReadKey();        }        private static void PrimeNumber(int targetNum)        {            Stopwatch sw = new Stopwatch();            sw.Start();            for (int i = 2; i < targetNum; i++)            {                int halfNum = i / 2;                bool isPrimeNumber = true;                for (int j = 2; j < halfNum; j++)                {                    if (i % j == 0)                    {                        isPrimeNumber = false;                        break;                    }                }                if (isPrimeNumber)                {                    //Console.WriteLine($"數(shù){i}是素?cái)?shù)...");                }            }            sw.Stop();            TimeSpan ts2 = sw.Elapsed;            Console.WriteLine($"{targetNum}:素?cái)?shù)計(jì)算總共花費(fèi){ts2.TotalSeconds}s.");        }    }}

2.1.2. 執(zhí)行結(jié)果

以下編譯為Release并點(diǎn)擊可執(zhí)行程序運(yùn)行

2.2 Python

2.2.1. 開發(fā)環(huán)境

  1. VSCode
  2. python 3.9.7

2.2.2. 代碼

from time import *def primeNum(targetNum):    begin_time = time()    for i in range(2,targetNum):        halfNum=i/2        isPrimeNumber = True        j=2        while j <= halfNum:            if i%j==0:                isPrimeNumber=False                break            j=j+1        # if isPrimeNumber:        #     # print(str(i)+"數(shù)是素?cái)?shù)")        end_time = time()    run_time = end_time-begin_time    print ("{}:素?cái)?shù)計(jì)算總共耗時(shí):{}s".format(targetNum,run_time)) primeNum(100)primeNum(200)primeNum(500)primeNum(1000)primeNum(2000)primeNum(5000)primeNum(10000)primeNum(50000)primeNum(100000)

2.2.2. 執(zhí)行結(jié)果

以下使用命令行執(zhí)行

2.3. C++

2.3.1. 開發(fā)環(huán)境

  1. VS2019

2.3.2. 代碼

using namespace std;void primeNum(int targetNum){    clock_t startTime = clock();    int numCount = 0;    for (int i = 2; i < targetNum; i++)    {        int halfNum = i / 2;        bool isPrimeNumber = true;        for (int j = 2; j <= halfNum; j++)        {            if (i % j == 0)            {                isPrimeNumber = false;                break;            }        }        if (isPrimeNumber)        {            numCount++;            //cout << "數(shù)" << i << "是素?cái)?shù)..." << endl;        }    }    clock_t endTime = clock();    cout << targetNum << ":素?cái)?shù)計(jì)算總共花費(fèi)" << endTime - startTime<<" ms ,素?cái)?shù)個(gè)數(shù)為:"<< numCount << endl;}int main(){	primeNum(100);	primeNum(200);	primeNum(500);	primeNum(1000);	primeNum(2000);	primeNum(5000);	primeNum(10000);	primeNum(50000);    primeNum(100000);}

2.3.3. 執(zhí)行結(jié)果

2.4. Go

2.4.1. 開發(fā)環(huán)境

  1. go version go1.17.2 windows/amd64
  2. VS Code

2.4.2. 代碼

package mainimport(	"fmt"	"time")func main()  {	primeNum(100)	primeNum(200)	primeNum(500)	primeNum(1000)	primeNum(2000)	primeNum(5000)	primeNum(10000)	primeNum(50000)	primeNum(100000)}func primeNum(targetNum int){	startTime := time.Now()	var halfNum int	var isPrimeNumber bool	var numCount int	halfNum=targetNum	numCount=0	for i := 2; i <= targetNum; i++ {        halfNum=i/2		isPrimeNumber = true		for j := 2; j <= halfNum; j++ {			if i%j ==0{				isPrimeNumber=false				break			}		}		        if isPrimeNumber{			numCount=numCount+1            // fmt.Printf("%v數(shù)是素?cái)?shù)/n",i)		}	}		elapsedTime := time.Since(startTime) / time.Millisecond 	fmt.Printf("%v:素?cái)?shù)計(jì)算總共耗時(shí):%d ms ,素?cái)?shù)個(gè)數(shù)為:%v/n",targetNum, elapsedTime,numCount)}

2.4.3. 執(zhí)行結(jié)果

2.5. Java

2.5.1. 開發(fā)環(huán)境

  1. Java8
  2. Idea

2.5.2. 代碼

    public static void main(String[] args) {        PrimeNumber(100);        PrimeNumber(200);        PrimeNumber(500);        PrimeNumber(1000);        PrimeNumber(2000);        PrimeNumber(5000);        PrimeNumber(10000);        PrimeNumber(50000);        PrimeNumber(100000);    }    private static void PrimeNumber(int targetNum)    {        long startTime=System.currentTimeMillis();   //獲取開始時(shí)間        int numCount = 0;        for (int i = 2; i < targetNum; i++)        {            int halfNum = i / 2;            boolean isPrimeNumber = true;            for (int j = 2; j <= halfNum; j++)            {                if (i % j == 0)                {                    isPrimeNumber = false;                    break;                }            }            if (isPrimeNumber)            {                numCount++;//                System.out.println(String.format("數(shù)%s是素?cái)?shù)...",i));            }        }        //函數(shù)主體代碼        long endTime=System.currentTimeMillis(); //獲取結(jié)束時(shí)間        System.out.println(String.format("%s:素?cái)?shù)計(jì)算總共花費(fèi)%s ms,素?cái)?shù)個(gè)數(shù)為:%s",targetNum,(endTime-startTime),numCount));    }}

2.5.3. 執(zhí)行結(jié)果

3. 效率折線

  1. C++ 最快
  2. Java和C#在這個(gè)上沒有太大的區(qū)別(沒有考慮預(yù)熱
  3. GO表現(xiàn)并沒有很快(沒有使用協(xié)程)
  4. Python最慢

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/122563.html

相關(guān)文章

  • PHP 性能分析與實(shí)驗(yàn)——性能的宏觀分析

    摘要:本文就改變性能分析的角度,并通過實(shí)例來分析出的性能方面需要注意和改進(jìn)的點(diǎn)。如下是作為解釋性語言的執(zhí)行過程。這里分別啟用和做實(shí)驗(yàn)。 此前,閱讀過了很多關(guān)于 PHP 性能分析的文章,不過寫的都是一條一條的規(guī)則,而且,這些規(guī)則并沒有上下文,也沒有明確的實(shí)驗(yàn)來體現(xiàn)出這些規(guī)則的優(yōu)勢,同時(shí)討論的也側(cè)重于一些語法要點(diǎn)。本文就改變PHP 性能分析的角度,并通過實(shí)例來分析出 PHP 的性能方面需要注意和...

    ZHAO_ 評(píng)論0 收藏0
  • PHP 性能分析與實(shí)驗(yàn)——性能的宏觀分析

    摘要:本文就改變性能分析的角度,并通過實(shí)例來分析出的性能方面需要注意和改進(jìn)的點(diǎn)。如下是作為解釋性語言的執(zhí)行過程。這里分別啟用和做實(shí)驗(yàn)。 此前,閱讀過了很多關(guān)于 PHP 性能分析的文章,不過寫的都是一條一條的規(guī)則,而且,這些規(guī)則并沒有上下文,也沒有明確的實(shí)驗(yàn)來體現(xiàn)出這些規(guī)則的優(yōu)勢,同時(shí)討論的也側(cè)重于一些語法要點(diǎn)。本文就改變PHP 性能分析的角度,并通過實(shí)例來分析出 PHP 的性能方面需要注意和...

    Ilikewhite 評(píng)論0 收藏0
  • 四·C語言之·函數(shù)全方位理解

    摘要:我們在開發(fā)的過程中每個(gè)程序員都可能用的到,為了支持可移植性和提高程序的效率,所以語言的基礎(chǔ)庫中提供了一系列類似的庫函數(shù),方便程序員進(jìn)行軟件開發(fā)。形式參數(shù)當(dāng)函數(shù)調(diào)用完成之后就自動(dòng)銷毀了。因此形式參數(shù)只在函數(shù)中有效。 ?寫在前面 ?博客主頁:kikoking的江湖背景?歡迎關(guān)注?點(diǎn)贊?收藏...

    legendaryedu 評(píng)論0 收藏0
  • 《十萬字Java入門練習(xí)100例》1-10例——紙上得來終覺淺,絕知此事要躬行

    摘要:代碼實(shí)現(xiàn)在控制臺(tái)打印總結(jié)本篇文章帶大家搭好環(huán)境,并體驗(yàn)了控制臺(tái)打印。輸出結(jié)果總結(jié)熟練掌握取余和整除運(yùn)算,大有作用。終止本次循環(huán),繼續(xù)執(zhí)行下一次循環(huán)。 ?本文收錄...

    keithyau 評(píng)論0 收藏0
  • C語言第三期(1萬字函數(shù)-數(shù)組-操作符詳解)

    摘要:形式參數(shù)當(dāng)函數(shù)調(diào)用完成之后就自動(dòng)銷毀了。函數(shù)調(diào)用傳值調(diào)用函數(shù)的形參和實(shí)參分別占有不同內(nèi)存塊,對形參的修改不會(huì)影響實(shí)參。函數(shù)的聲明一般出現(xiàn)在函數(shù)的使用之前。它其實(shí)就數(shù)組訪問的操作符。 ...

    Jeff 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

Ashin

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<