Skip to content
Snippets Groups Projects
Commit 26f407f4 authored by VAN-DER-SPURT YOAN's avatar VAN-DER-SPURT YOAN
Browse files

Update README.md

parent efe0a6e7
No related merge requests found
......@@ -21,9 +21,9 @@ Pour comparer les performances de ces trois structures, nous leurs appliquerons
### Description de tous les paramètres exploratoires du problème
Chacune des structures auront deux paramètres en entrée:
Chacune des structures aura deux paramètres en entrée:
* Un **nombre de valeurs contenues**, soit la *taille de la structure*
* Une **valeur maximale pour chaque entier contenu**, ici *maxVal*, utile pour *searchValue* et *deleteValue*
* Une **valeur maximale pour chaque entier contenu**, ici *maxVal*, utile pour *searchValue()* et *deleteValue()*
## Dispositif expérimental
......@@ -31,8 +31,9 @@ Chacune des structures auront deux paramètres en entrée:
[Code Java](src/com/company/Main.java)
[Script shell pour lancement des test](src/perf.sh)
[Script R pour les graphs de performances](src/graph.R)
Pour lancer les tests de performance, se placer dans src et lancer `./perf.sh | tee results.dat`
Pour lancer les tests de performances, se placer dans src et lancer `./perf.sh | tee results.dat`
Ce script lance `java com/company/Main nom_de_la_structure taille_structure valeur_maximale operation`
......@@ -42,8 +43,6 @@ Paramètres:
* **valeur_maximale** : Valeur **maximale** prise par les **Integer** de la structure.
* **operation** : Opération à **appliquer sur les structures**, parmi les trois [ci-dessus](#L16).
### Environnement de test
Description de la plateforme de test
......@@ -65,7 +64,7 @@ Valeurs des paramètres:
* **valeur_maximale** : *25 000*, *50 000*, *75 000* puis *100 000 000* (pour bien observer leur impact)
* **operation** : *fillStructureV1*, *searchValueV1*, *deleteValueV1*
* Chacune des opérations sera appelées **10 fois**.
* Soit un total de 3 opérations * 4 valeurs de maxVal * 10 tests * 3 structures = **360 tests**
* Soit un total de 3 opérations X 4 valeurs de maxVal X 10 tests X 3 structures = **360 tests**
## Résultats préalables
......@@ -83,10 +82,10 @@ On peut voir très clairement que la **structure HashStructure** prend énormém
De plus, nous pouvons d'ores et déjà constater que la **valeur maximale prise par les Integer** n'influence absolument pas le temps de calcul, sur ces trois opérations du moins.
Le **temps de calcul** dépendrait donc essentiellement de la **taille de la structure** (nous avons presque des fonctions affines **temps(taille_de_structure)**)
Le **temps de calcul** dépendrait donc essentiellement de la **taille de la structure** (nous avons presque des fonctions affines **temps(taille_de_structure)**).
Des méthodes sont disponibles grâce aux structures **ArrayList** et **HashMap**, notamment `list.contains(obj)`, qui n'existent pas sur des structures primitives telles que la structure **Integer[]** et qui sembleraient être plus efficaces pour rechercher des valeurs.
Cependant, il semblerait que cette dernière soit très légèrement plus rapide (les temps d'exécution se trouvent quasiment tous en dessous des 2 secondes) que ses équivalents plus haut niveau, ce que je trouve surprenant.
Cependant, il semblerait que cette dernière soit très légèrement plus rapide (les temps d'exécution se trouvent quasiment tous en dessous des 2 secondes) que ses équivalents plus haut niveau, ce que je trouve surprenant.
### Discussion des résultats préalables
......@@ -98,7 +97,7 @@ On n'a pas encore cherché à construire des algorithmes compliqués pour accél
### Hypothèse
Les performances de ces trois mêmes structures, cette fois sur des **tableaux triés dans l'ordre numérique**, seraient-elles accrues?
Un **tri dichotomique** sur une structure **Integer[]** accélèrerait-elle encore les recherches?
Un **tri dichotomique** sur une structure **Integer[]** accélèrerait-elle encore les performances de recherche de la structure?
### Protocole expérimental de vérification de l'hypothèse
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment