C++で最大値を見つけるのがPython3より速いのはなぜか不思議です。ここでは、両方の言語での私のコードの抜粋です:PythonとC++の最大値の比較
C++:
int main() {
int arr[] = {45, 67, 89};
int temp = 0;
for(int n = 0; n < 3; n++) {
if(arr[n] > temp)
temp = arr[n];
}
cout << "Biggest number: " << temp << endl;
}
Pythonの:それはコードに示されるよう
def Main():
numbers = ['87', '67', '32', '43']
print(max(numbers))
if __name__ == "__main__":
Main()
、私はC++経由で最大値を求めていますPythonでmax()メソッドを使用するのと比較して、配列の各要素をループします。
私は、実行時間を見つけるために端末上でコードを実行し、約0.006s(C++)と0.032s(Python)が必要であることを発見しました。 Pythonの実行時間をさらに短縮する方法はありますか?
"* C++の最大値を見つけるのはPython3 *よりも遅いです。" ...これはあなたのデータが言うところの*逆の*です。 –
再作成されたコードに関係しないPythonの1ライナーにマッチさせるために 'std :: max_element'を使用することもできます。 – chris
最適化をオンにしてコンパイルされたコードでこれをテストしましたか?そうでない場合、これは無意味です。あなたの例をコンパイルするために使用したコマンドラインを投稿してください。 Visual Studioの場合は、 "Debug"ビルドではなく、 "Release"ビルドを作成してください。 – PaulMcKenzie