Pagini recente » Istoria paginii utilizator/robytzza | Diferente pentru utilizator/nusuntroman intre reviziile 23 si 4 | Monitorul de evaluare | Diferente pentru utilizator/athanaric intre reviziile 62 si 37 | Diferente pentru treapuri intre reviziile 74 si 75
Diferente pentru
treapuri intre reviziile
#74 si
#75
Nu exista diferente intre titluri.
Diferente intre continut:
h3(#inserare). Inserare
p=. !treapuri?Fig2b.png!
În cadrul operaţiei de inserare vom atribui unui nod nou o prioritate aleatoare şi îl vom insera, conform algoritmului standard de inserare într-un arbore binar, la baza arborelui. Cheile formează un arbore de căutare, dar priorităţile pot să nu mai formeze un heap. Pentru a redobândi această proprietate, cât timp nodul de inserat, fie el $z$, are prioritatea mai mare decât a părintelui său, se va executa o '$rotaţie$':treapuri#rotatii în $z$, o operaţie locală care scade nivelul lui $z$ cu $1$ şi creşte nivelul părintelui lui $z$ cu $1$, şi care menţine invariantul arborilor de căutare. Timpul de inserare al lui $z$ este proporţional cu adâncimea lui înainte de rotaţii - trebuie să coborâm după care să urcăm înapoi efectuând rotaţiile necesare.
Complexitate: $O(log N)$.
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.