Skip to content
Snippets Groups Projects
Commit 46dcb3aa authored by Julianne's avatar Julianne
Browse files

experiment_longest

parent ad98cff8
No related branches found
No related tags found
No related merge requests found
histogramme.png

16.6 KiB

mphf.png

33.4 KiB | W: | H:

mphf.png

29.3 KiB | W: | H:

mphf.png
mphf.png
mphf.png
mphf.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -41,19 +41,31 @@ def experiment_load_factor(load_factors): ...@@ -41,19 +41,31 @@ def experiment_load_factor(load_factors):
def experiment_longest(): def experiment_longest():
""" """
TODO: que fait cette fonction Mesure le temps d'insertion de 10 000 paires clé-valeur dans un dictionnaire Python et
renvoie un histogramme des temps d'insertion sous forme d'un tableau.
""" """
#Initalisation d'un dictionnaire
d = {} d = {}
#Liste qui contiendra le nombre d'insertions
insertion_times = [] insertion_times = []
#On parcourt de 0 à 9999
for i in range(10000): for i in range(10000):
#on définit une clé pour chaque valeur comme étant un int sous forme de str
key = str(i) key = str(i)
#on définit une variable valeur comme étant l'index
value = i value = i
#on démarre un chrono
start_time = time.time() start_time = time.time()
#on ajoute la clé et sa valeur associée au dictionnaire
d[key] = value d[key] = value
#on mesure le temps d'insertion en stoppant le chrono et mesurant la différence entre le début et le stop
insertion_time = time.time() - start_time insertion_time = time.time() - start_time
#on l'ajoute à la liste des temps
insertion_times.append(insertion_time) insertion_times.append(insertion_time)
#on crée un histogramme à l'aide de numpy et on récupère la liste des temps d'insertions sous forme de tableau
frequencies = np.histogram(insertion_times)[0] frequencies = np.histogram(insertion_times)[0]
#Renvoie les valeurs
return frequencies return frequencies
def visualisation(load_factors, insertion_times, num_resizes, sizes, frequencies): def visualisation(load_factors, insertion_times, num_resizes, sizes, frequencies):
...@@ -82,4 +94,5 @@ def visualisation(load_factors, insertion_times, num_resizes, sizes, frequencies ...@@ -82,4 +94,5 @@ def visualisation(load_factors, insertion_times, num_resizes, sizes, frequencies
load_factors = [0.01, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0] load_factors = [0.01, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]
insertion_times, num_resizes, sizes = experiment_load_factor(load_factors) insertion_times, num_resizes, sizes = experiment_load_factor(load_factors)
frequencies = experiment_longest() frequencies = experiment_longest()
print(frequencies)
visualisation(load_factors, insertion_times, num_resizes, sizes, frequencies) visualisation(load_factors, insertion_times, num_resizes, sizes, frequencies)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment