Aide exercice codage d'arbre binaire de recherche sur python
Bonjour, je suis en terminale spé NSI et j'aurais besoin de votre aide pour un exercice qui me permettrais de mieux comprendre le codage d'ABR (arbre binaire de recherche en python)
Voici une des questions proposé dans l'exercice:
On dispose d’un fichier films.csv contenant des informations sur plus de 1000 films. Le délimiteur est
le point-virgule. Chaque ligne de ce fichier contient les 5 informations suivantes :
• l’identifiant du film,
• le titre original du film,
• l’année de sortie du film,
• sa durée en minutes,
• la recette qu’il a générée, exprimée en dollars.
Voici à quoi ressemblent les deux premières lignes de ce fichier :
8193;Napoleon Dynamite;2004;95;46118097
8195;Ronin;1998;122;41610884
a. Reprendre la classe Nœud adaptée aux ABR vue en cours, et apporter les
modifications nécessaires aux attributs et aux méthodes utiles à l’exercice pour :
• qu’elle puisse prendre en charge des clés de type tableau ;
• le tri se fasse sur les identifiants,
• il y ait au moins le constructeur, la méthode est_Vide et la méthode
inserer.
La classe obtenue s’appellera Abr_id. Indiquer par des commentaires les
endroits où se situent les changements que vous avez effectués.
Voici ce qu'on a vu en cours:
Voici une des questions proposé dans l'exercice:
On dispose d’un fichier films.csv contenant des informations sur plus de 1000 films. Le délimiteur est
le point-virgule. Chaque ligne de ce fichier contient les 5 informations suivantes :
• l’identifiant du film,
• le titre original du film,
• l’année de sortie du film,
• sa durée en minutes,
• la recette qu’il a générée, exprimée en dollars.
Voici à quoi ressemblent les deux premières lignes de ce fichier :
8193;Napoleon Dynamite;2004;95;46118097
8195;Ronin;1998;122;41610884
a. Reprendre la classe Nœud adaptée aux ABR vue en cours, et apporter les
modifications nécessaires aux attributs et aux méthodes utiles à l’exercice pour :
• qu’elle puisse prendre en charge des clés de type tableau ;
• le tri se fasse sur les identifiants,
• il y ait au moins le constructeur, la méthode est_Vide et la méthode
inserer.
La classe obtenue s’appellera Abr_id. Indiquer par des commentaires les
endroits où se situent les changements que vous avez effectués.
Voici ce qu'on a vu en cours:
class Noeud(): def __init__(self,val,fg=None,fd=None): if val!=None: self.val=val if fg==None: self.fg=Noeud(None) else: self.fg=fg if fd==None: self.fd=Noeud(None) else: self.fd=fd else: self.val=None def est_vide(self): return self.val==None def insertion(self, cle): # Si le noeud est vide, on insère la valeur if self.est_vide(): ## self=Noeud(cle) self.val=cle self.fg=Noeud(None) self.fd=Noeud(None) else: #Sinon, on compare la nouvelle clé à celle du noeud if cle<self.val: if self.fg.est_vide(): self.fg=Noeud(cle) else: #récursif ! self.fg.insertion(cle) elif cle>self.val: if self.fd.est_vide(): self.fd=Noeud(cle) else: #récursif ! self.fd.insertion(cle) #Pas de else : on ne répète pas une valeur déjà présente.
A voir également:
- Aide exercice codage d'arbre binaire de recherche sur python
- Codage ascii - Guide
- Codage binaire - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Citizen code python avis - Accueil - Outils
- Recherche photo - Guide
1 réponse
Bonjour,
Nous ne ferons pas votre exercice à votre place.
Merci de décrire précisément votre problème et en postant le code déjà réalisé.
Cliquez ici pour des conseils d'écriture des messages et ici concernant les devoirs scolaires ou PFE.
Pour poster votre code, merci de penser à la coloration syntaxique.
Nous ne ferons pas votre exercice à votre place.
Merci de décrire précisément votre problème et en postant le code déjà réalisé.
Cliquez ici pour des conseils d'écriture des messages et ici concernant les devoirs scolaires ou PFE.
Pour poster votre code, merci de penser à la coloration syntaxique.
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser dans tes prochains messages.
Bonne chance