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