2010-02-08 7 views
1
(10) 
/\ 
(9) (8) 
/\/\ 
(7) (5) (4) 

x  x 
/ and \ == x=>y 
y   y 
+4

Que signifie «x => y»? * x * ≥ * * *? * x * ⇒ * y *? (* x *, * y *) ∈ * E * (* G *) – Joey

+1

es-tu sûr que (5) est supposé avoir deux parents? – Malfist

+2

@ Malfist, pourquoi pas, cela signifie simplement que ce n'est pas un arbre. – Wim

Répondre

5

C'est un directed acyclic graph (DAG) qui peut définir une relation d'ordre (partielle).

+0

bien, si (5) est un enfant de (9) et (8), alors il est cyclique. Mais cela aurait pu être une faute de frappe de l'OP ... pas sûr. – FrustratedWithFormsDesigner

+1

@Fru: De son commentaire 'x => y', je comprends qu'il veut dire un graphe * dirigé *, avec tous les bords qui descendent. Vous n'avez pas de cycle de cette façon, car une fois que vous atteignez (5), vous ne pouvez plus remonter. – Wim

+0

@FrustratedWithFormsDesigner: Il semble avoir défini une direction (x => y), donc ce n'est pas cyclique. – 3lectrologos

5

Cela ressemble à un maximum de heap, sauf que (5) ne doit pas être attaché à deux parents.

Un tas-max est une structure de données arborescente où x>=y si x est un parent de y. Comme il s'agit d'un arbre, chaque enfant ne peut avoir qu'un seul parent.

+0

Qu'est-ce que c'est "ne devrait pas" entreprise? Comme indiqué, c'est une structure parfaitement valide. Ce n'est peut-être pas un max-tas. – ceejayoz

+2

Je voulais dire que si c'est un max-tas, un enfant ne devrait pas être attaché à deux parents. Je pense toujours que l'instructeur avait signifié un tas. – interjay

Questions connexes