Files
James Boutaric 56cb2d6e54 ajout TD4 complet
2025-10-15 10:34:15 +02:00

44 lines
1.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# TD4 - DEV5.1 : Qualité algorithmique
## Objectifs
Ce TD vise à travailler sur la **complexité algorithmique** et à améliorer la **qualité des algorithmes**.
---
## Exercice 2 — Calculs de complexité de fonctions
### Calculez la complexité des fonctions suivantes :
**<ins>function1 : </ins>**
- _Meilleur cas_ : `O(n)` → quand chaque élément de tableau1 est trouvé immédiatement dans tableau2 (grâce au break).
- _Pire cas_ : `0(n × m)` → quand aucun élément ne correspond, on parcourt entièrement les deux tableaux.
**<ins>function2 : </ins>**
- _Meilleur cas_ : `O(1)` → si la boucle sarrête directement (ex. première condition vraie).
- _Pire cas_ : `O(x)` → si la boucle parcourt tous les éléments jusquà la fin.
**<ins>function3 : </ins>**
- _Meilleur cas_ : `O(1)`
- _Pire cas_ : `O(1)`
---
## Exercice 3 — Algorithme de tri
### Énoncé
Créer un **algorithme** permettant de trier un **tableau à N dimensions** contenant **M valeurs** puis Calculer la **complexité algorithmique** de **lalgorithme** écrit .
**<ins>tri_tableaux.c : </ins>**
- _Meilleur cas_ : `O(N × M)` → si chaque sous-tableau est déjà trié et que les sommes sont déjà dans lordre croissant, aucun reclassement nest nécessaire.
- _Pire cas_ : `O(N × M (log M + log N))` → si chaque sous-tableau est totalement désordonné et que les sommes doivent être recalculées à chaque comparaison pendant le tri principal.