Qu'est-ce que ce code pseudo signifie - Recherche binaire Successeur Arbre Fonction

voix
0
if right[x] != NIL
 then return TREE-MINIMUM(right[x])

 y<-p[x]
 while y!= NIL and x = right[y]
  do x<-y
  y<-p[y]
 return y

Je sais ce que « si droit [x] = NIL puis retour arbre min! » Signifie et je l'ai traduit à:

if(p->RChild) return fMinValue(p->RChild);//returns the min value of the sub-tree starting at the right child node of p

Le reste, je vais avoir du mal à comprendre.

Créé 21/02/2010 à 05:50
source utilisateur
Dans d'autres langues...                            


2 réponses

voix
2

<-est très probablement l'opérateur d'affectation. pJe suppose que est parent. Que vous confus au sujet?

Créé 21/02/2010 à 05:56
source utilisateur

voix
2

Ici , p[]signifie presque certainement « le nœud parent de ». Vous travaillez sur le noeud x, donc p[x]signifie « le parent du noeud courant » (comme des right[x]moyens « de l'enfant à droite du noeud courant »).

La <-notation est l' affectation. Comme =dans les langues c-like.

La deuxième partie de l'algorithme présenté des promenades sur l'arbre à la recherche pour la première fois que vous ascensionnés un lien gauche au lieu d'un droit. Mais je ne suis pas sûr que je qualifierais cela en fonction de successeur.

Créé 21/02/2010 à 06:20
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more