Un albero binario può essere codificato utilizzando due funzioni le r
in modo tale che per una node n, l(n)dare al bambino sinistra n, r(n)
dà il diritto del bambino di n.
Un ramo di un albero è un percorso dalla radice ad una foglia, la lunghezza di un ramo di un particolare foglia è il numero di archi sul percorso dalla radice a quella foglia.
Lasciare MinBranch(l,r,x)essere un semplice algoritmo ricorsivo per prendere un albero binario codificato da L e R funzioni insieme con il nodo radice x per l'albero binario e restituisce la lunghezza del ramo più corto albero binario.
Dare il pseudocodice per questo algoritmo.
OK, in modo sostanzialmente questo è quello che mi è venuta in mente finora:
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)}
}
Ovviamente questo non è grande o perfetto. Sarei grato se la gente può aiutarlo ad ottenere questo perfetto e di lavoro - qualsiasi aiuto sarà apprezzato.













