Files
TermNSI/Arbres/DS_arbres.md

68 lines
2.3 KiB
Markdown
Raw 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.

## Évaluation Terminale NSI : Arbres et Arbres Binaires
### Exercice 1 : L'arbre généalogique loufoque
Le grand sorcier Archimagicus a perdu son arbre généalogique ! Il ne se souvient que de quelques relations de parenté et a noté les informations suivantes :
1. Il a deux enfants : Merlin et Morgane.
2. Merlin a lui-même deux enfants : Gandalf et Saroumane.
3. Morgane a une fille, Circé.
4. Gandalf et Circé ont un fils : Harry.
Représente cet arbre sous forme d'un schéma d'arbre binaire (même si certains nont qu'un seul enfant). Puis, détermine :
- Le niveau de chaque personnage.
- La hauteur de l'arbre.
- Si larbre est un arbre binaire de recherche.
---------------
### Exercice 2 : Un arbre de décisions absurde
On considère larbre de décision suivant :
```
Est-ce urgent ?
/ \
Travail ou Loisir ? Ignorer la demande
/ \
Envoyer Form. Reporter
```
- Implémente cet arbre sous forme de structure en Python.
- Écris une fonction permettant de parcourir cet arbre et dafficher les décisions possibles.
-----------
### Exercice 3 : Un arbre de quêtes pour un RPG
Un jeu de rôle utilise un arbre pour gérer ses quêtes :
```
Trouver l'épée sacrée
/ \
Explorer la grotte Chercher le vieux sage
/ \ / \
Combattre Fuir Récupérer un sort Demander un conseil
un troll
```
- Représente cet arbre sous forme de structure Python.
- Écris une fonction permettant dafficher toutes les quêtes accessibles à partir dun point donné.
---
## Exercice 4 : Un défi algorithmique avancé
Un arbre binaire est complet si tous ses niveaux, sauf éventuellement le dernier, sont complètement remplis, et si tous les nœuds sont alignés le plus à gauche possible.
### Question :
- Écris une fonction récursive permettant de vérifier si un arbre est **complet**.
- Écris une autre fonction qui calcule le nombre minimum dopérations nécessaires pour transformer un arbre quelconque en arbre binaire complet.
---
## Exercice 5 : Un jeu ancien et les arbres
Quel est le jeu stratégique ancien qui pourrait voir tous ses coups représentés sous forme d'un arbre ?
Explique pourquoi et propose une manière de représenter cet arbre en Python.