aboutsummaryrefslogtreecommitdiff
path: root/semestre 3/structures des données/td/td3/exo1.md
diff options
context:
space:
mode:
Diffstat (limited to 'semestre 3/structures des données/td/td3/exo1.md')
-rw-r--r--semestre 3/structures des données/td/td3/exo1.md14
1 files changed, 14 insertions, 0 deletions
diff --git a/semestre 3/structures des données/td/td3/exo1.md b/semestre 3/structures des données/td/td3/exo1.md
new file mode 100644
index 0000000..7aba849
--- /dev/null
+++ b/semestre 3/structures des données/td/td3/exo1.md
@@ -0,0 +1,14 @@
+Une hashmap semble pertinente, car on a une association clé/valeur.
+
+La fonction de hachage devra donc renvoyé sur [0, 100 000-1], i.e. être modulo 100 000.
+
+Elle provoque beaucoup de collisions, notamment si au moins une valeur est à 0.
+Pour régler ce problème, on pourrait utiliser
+```c
+int g(int x1, int x2, int x3, int x4, int x5, int x6) {
+ return (x1+1)*(x2+1)*(x3+1)*(x4+1)*(x5+1)*(x6+1) % 100000;
+}
+```
+
+La fonction ne prend pas en compte l'ordre des valeurs.
+