Maison > développement back-end > Tutoriel Python > Comment le module « timeit » de Python peut-il aider à comparer les performances des algorithmes ?

Comment le module « timeit » de Python peut-il aider à comparer les performances des algorithmes ?

Susan Sarandon
Libérer: 2024-12-03 02:47:11
original
286 Les gens l'ont consulté

How Can Python's `timeit` Module Help Compare Algorithm Performance?

Comparaison des performances de l'algorithme avec Timeit

Le module timeit fournit un moyen pratique de mesurer et de comparer le temps d'exécution de différentes fonctions ou extraits de code. Voici comment utiliser ce module pour comparer les performances de vos propres algorithmes, tels que "insertion_sort" et "tim_sort" :

Session Python interactive

Pour une session interactive Session Python, vous pouvez utiliser IPython ou l'interpréteur Python standard.

Utilisation d'IPython Shell

IPython propose la fonction %timeit :

def insertion_sort(arr):
    # Your implementation of insertion sort

def tim_sort(arr):
    # Your implementation of tim sort

%timeit for x in range(100): insertion_sort(x)
%timeit for x in range(100): tim_sort(x)
Copier après la connexion

Cela affiche le temps d'exécution de chaque algorithme en microsecondes.

Utilisation de l'interpréteur Python standard

Importez vos fonctions depuis __main__ dans la configuration déclaration :

def insertion_sort(arr):
    # Your implementation of insertion sort

def tim_sort(arr):
    # Your implementation of tim sort

import timeit
timeit.repeat("for x in range(100): insertion_sort(x)", "from __main__ import insertion_sort",
              number=100000)
timeit.repeat("for x in range(100): tim_sort(x)", "from __main__ import tim_sort",
              number=100000)
Copier après la connexion

Cela renvoie une liste des temps d'exécution pour chaque algorithme.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal