Un arbre binaire peut être codé en utilisant deux fonctions let r
telle que pour un node n, l(n)donner à l'enfant de gauche n, r(n)
donner à l'enfant le droit de n.
Une branche d'un arbre est un chemin à partir de la racine à une feuille, la longueur d'une branche à une feuille particulière est le nombre d'arcs sur le chemin de la racine à cette feuille.
Soit MinBranch(l,r,x)être un simple algorithme récursif pour avoir un arbre binaire codé par les fonctions L et R en même temps que le noeud racine x de l'arbre binaire et renvoie la longueur de la plus courte branche de l'arbre binaire.
Donnez le pseudocode pour cet algorithme.
OK, donc en gros ce que je suis venu avec à ce jour:
MinBranch(l, r, x)
{
if x is None return 0
left_one = MinBranch(l, r, l(x))
right_one = MinBranch(l, r, r(x))
return {min (left_one),(right_one)}
}
Il est évident que ce n'est pas grande ou parfaite. Je serais reconnaissant si les gens peuvent me aider à obtenir ce parfait et travail - toute aide sera appréciée.













