Ang self-balancing trees ay mga data structures na ginagamit sa computer science upang mapanatili ang mga nai-uring data nang mahusay. Ang colance factor ay isang susing metric na tumutulong upang malaman kung ang isang puno ay nananatiling balanse pagkatapos ng mga inkorsyon o deletasyon. pag-unawa kung paano kalkulahin ang salik na ito ay mahalaga para sa mga inhinyerong nagdidisenyo ng mga optimikong algorithm.

Ano ba ang Salik na Timbang?

Ang balanseng salik ng isang node sa isang puno ng self-balancing ay ang pagkakaiba ng taas ng kaliwa at kanang mga subtree nito. ito ay nagpapakita kung ang node ay balanse, kaliwa-based, o kanang-bae. Ang isang balanseng factor na 0, 1, o -1 ay karaniwang nangangahulugan ng isang balanseng node.

Pagtaya sa Salik na Pagtitimbang

Upang makabuo ng isang timbang na salik, sukatin ang taas ng kaliwang subtree at bawasan ang taas ng kanang subtree. Ang taas ng isang subtree ay ang bilang ng mga gilid sa pinakamahabang landas mula sa node hanggang sa isang dahon. Ang pormula ay:

Balance Factor = Height(Left Subtree) - Height(Right Subtree)

Pagkakapit sa mga Operasyon ng Puno

Sa panahon ng pagpapasok o pag-alis, ang muling pag-iinam ng salik na balanse ay tumutulong sa pagtiyak kung kinakailangan ang mga ikot upang mapanatili ang balanse ng puno. kung ang salik na balanse ay lumampas sa 1 o bumababa sa mababa sa1, ang puno ay nagsasagawa ng mga ikot upang maibalik ang balanse, na tinitiyak ang mahusay na paghahanap, pagpapasok, at pag-iintsa ng mga operasyong delete.

Karaniwang mga Puno ng Pag-aarmas sa Sarili

  • Puno ng AVL
  • Puno ng Pula-Black
  • Puno ng Splay
  • Treap