Arbre et récursivité

Un algorithme récursif est un algorithme qui résout un problème en calculant des solutions d’instances plus petites du même problème (source Wikipédia).

Ce type d’algorithme se prête tout particulièrement à la manipulation de structures complexes, et notamment les arbres.

Structure arborescente des systèmes de fichiers

La plupart des systèmes de fichiers sont présentés sous la forme d’une structure arborescente.

Exemples

Explorateur Windows …

image

 

Dans la suite de l’article,

  • nous utiliserons l’arborescence de ce dossier (à télécharger, et dézipper)
  • nous utiliserons le langage Python avec le module os  et plus particulièrement les fonctions :
    • os.listdir(chemin_dossier)  : retourne la liste des noms de fichiers ou dossier contenus dans le dossier chemin_dossier
    • os.path.isfile(chemin)  : retourne True  si chemin  est un fichier, False  dans le cas contraire (dossier ou mauvais chemin)
    • os.path.isdir(chemin)  : retourne True  si chemin  est un dossier, False  dans le cas contraire (fichier ou mauvais chemin)
    • os.path.join(chemin_dossier, nom_fichier)  : retourne le chemin du fichier nom_fichier , relatif au chemin chemin_dossier

 

Affichage du contenu d’un dossier

 

Structure arborescente personnalisée

Choix de la structure

Parmi les possibilités, on peut retenir une structure à base de dictionnaires et de listes :

 

Construction

 

 

 

Affichage

Vous aimerez aussi...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

code