Skip to content
Snippets Groups Projects
Commit fc94aff5 authored by Tristan TOLENTINO's avatar Tristan TOLENTINO
Browse files

question 3, 4, 5

parent ba9590c7
Branches
No related tags found
No related merge requests found
......@@ -14,21 +14,38 @@ def experiment_load_factor(load_factors):
insertion_times = []
search_times = []
deletion_times = []
num_resizes = []
sizes = []
for load_factor in load_factors:
d = {}
d = {} # Dictionnaire vide
size = int(10000 * load_factor) # Taille de la structure en fonction du facteur charge
# Mesure du temps d'insertion
start_time = time.time()
num_elements = 0 # Nombre d'éléments
num_resize = 0 # Nombre de réallocations de mémoire
last_size = sys.getsizeof(d) # Taille initiale du dictionnaire
start_time = time.time() # Mesure du temps d'insertion
# Insertion des éléments dans le dictionnaire
for i in range(size):
key = str(i)
value = i
d[key] = value
insertion_time = time.time() - start_time
insertion_times.append(insertion_time)
value = i
d[key] = value
num_elements += 1
# Vérifier le nombre de réallocations mémoire
current_resize = sys.getsizeof(d)
if current_resize > last_size:
num_resize += 1
last_size = current_resize
insertion_time = time.time() - start_time
insertion_times.append(insertion_time)
num_resizes.append(num_resize)
sizes.append(last_size)
# Mesure du temps de recherche
start_time = time.time()
for i in range(size):
......@@ -49,7 +66,7 @@ def experiment_load_factor(load_factors):
deletion_time = time.time() - start_time
deletion_times.append(deletion_time)
return insertion_times, search_times, deletion_times
return insertion_times, search_times, deletion_times, num_resizes, sizes
def experiment_longest():
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment