From 92b69bd68e31b30ce53989e379172f0f9f8b8bb2 Mon Sep 17 00:00:00 2001 From: Soltane Maxime <maxime.soltane.etu@a13p12.fil.univ-lille.fr> Date: Thu, 27 Feb 2025 10:41:09 +0100 Subject: [PATCH] insertion_times --- Readme.md | 2 +- tp_2_miso_dict.py | 21 +++++++++++++++++++-- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/Readme.md b/Readme.md index 347c31a..858cbc6 100644 --- a/Readme.md +++ b/Readme.md @@ -37,7 +37,7 @@ le temps d'insertion et la taille de la mémoire occupée. Vous pourrez utiliser Fonction `experiment_load_factor`: -0. La fonction `experiment_load_factor` doit être définie pour prendre en entrée une liste de facteurs de charge (`load_factors`) et renvoyer les temps +0. La fonction `experiment_load_factor` doit être définie pour prendre en entrée une liste de facteurs de charge (`load_factors`) et renvoyer les temps : - d'insertion de clefs, - les nombres de réallocations de mémoire (quand le dictionnaire est ré-écrit en mémoire pour agrandir sa taille) - et les tailles de mémoire occupées par le dictionnaire pour chaque facteur de charge. diff --git a/tp_2_miso_dict.py b/tp_2_miso_dict.py index cf5948d..a2b08cd 100644 --- a/tp_2_miso_dict.py +++ b/tp_2_miso_dict.py @@ -4,15 +4,32 @@ import time import sys - ###### PARTIE 2 ###### +def mean (liste : list) -> float : + """ + """ + taille = len(liste) + return sum(liste)/taille + def experiment_load_factor(load_factors): """ Étude du facteur de charge """ - return [],[],[] + insertion_times=[] + set_kmer = {str(i) for i in range(10)} + for factors in load_factors : + d = {} + times = [] + for kmer in set_kmer: + start_time = time.time() + d[kmer] = 0 + stop_time = time.time() + times.append(stop_time-start_time) + insertion_times.append(mean(times)) + + return insertion_times, def experiment_longest(): """ TODO: que fait cette fonction -- GitLab