1 / 26

Silme

Silme. Anahtar hedefi silmek için, x yaprağında buluruz ve sonra sileriz. Dikkat edilmesi gereken iki durum vardır. (1) Hedef bazı iç düğümlerde bir anahtar olabilir. ( bahsedilen mantığa göre yeni elemanla yer değiştirmesi gerekir. )

shanon
Download Presentation

Silme

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Silme • Anahtar hedefi silmek için, x yaprağında buluruz ve sonra sileriz. • Dikkat edilmesi gereken iki durum vardır. (1) Hedef bazı iç düğümlerde bir anahtar olabilir. (bahsedilen mantığa göre yeni elemanla yer değiştirmesi gerekir.) (2) x yaprağından hedefi sildikten sonra, M/2 - 1 anahtardan daha az eleman içerirse(düğümleri birleştirmek gerekir. )

  2. Durum (1) • Verilen mantığa göre, hedef x in enfazla bir y atasında anahtar olarak görülebilir. Üstelik, düğüm y’yi ziyaret etmiş olmamız gerekir ve hedefi onun içerisınde görmüş olmamız gerekir. Bu yüzden x düğümünden sildikten sonra, y’ ye doğrudan erişebiliriz ve x’deki yeni en küçük elemanla yer değiştirebiliriz.

  3. Durum (2): Çok az anahtarı olan yaprakların düzenlenmesi • Farzedelimki bir yapraktan hedef anahtarlı bir kayıdı sildik • u M/2 - 2 kadar (çok az) anahtarı olan bir yaprak olsun. • v, u nun bir kardeşi olsun • k u ve v yi ayıran ve u ve v nin ebeveyninde olan bir anahtar (işaretçi) olsun. • Bu halde iki durum vardır.

  4. Çok az anahtarı olan yaprakların düzenlenmesi • Durum 1: v M/2 kadar veya daha fazla anahtar içerir ve v, u ‘nun sağdaki kardeşidir. • Ensoldaki kaydı v’den u’ya taşı • Ebeveyn’de u ve v yi ayırabilmek için gerekli anahtarı v’nin en küçük yeni elemanı olarak belirle • Durum 2: v M/2 veya daha fazla anahtar içeriyor ve v, u’nun soldaki kardeşidir. • Ensağdaki kaydı v’den u’ya taşı • Ebeveyn’de u ve v yi ayırabilmek için gerekli anahtarı u’nun en küçük yeni elemanı olarak belirle

  5. Silme Örneği 15 silinmek isteniyor

  6. 9 silinmek isteniyor

  7. 10 silinmek isteniyor

  8. İki yaprağın birleştirilmesi • En az M/2 kadar anahtarı olmayan iki kardeş birleştirilir. • Durum (1): Farzedelimki u’nun sağdaki kardeşi v tam olarak M/2 -1 anahtar içermektedir. u ve v birleştirilir • u’daki anahtarları v’ye taşı • Ebeveyndeki u’ya olan işaretçiği kaldır. • u’nun ebeveynınden u ve v yi ayıran anahtarı sil

  9. İki yaprağın birleştirilmesi • Durum (2): Farzedelimki u’nun solundaki kardeşi v tam olarak M/2 -1 anahtar içermektedir. u ve v birleştirilir • u’daki anahtarları v’ye taşı • Ebeveyndeki u’ya olan işaretçiği kaldır. • u’nun ebeveynınden u ve v yi ayıran anahtarı sil

  10. Örnek 12 silinmek isteniyor

  11. Devamı v u

  12. Devamı

  13. Devamı çok az anahtar! …

  14. İç bir düğümden bir anahtarın silinmesi • Farzedelim ki iç düğüm u’dan bir anahtar silindi ve u’ daki anahtar sayısıM/2 -1 ‘den az oldu. • Durum (1): u kökse • Eğer u boş ise, u’yu kaldır ve onun çocuğunu yeni kök yap

  15. İç bir düğümden bir anahtarın silinmesi • Durum (2): u’nun sağ kardeşi vM/2 kadar veya daha fazla anahtara sahipse • u ve v’nin ebeveyninden u ve v arasındaki ayırıcı anahtarı u’ya taşı. • v’nin en soldaki çocuğunu u’nun en sağdaki çocuğu yap • ebeveyne u ve v yi ayırmak için v’nin en solundaki anahtarı taşı. • Durum (2): u’nun sol kardeşi v M/2 kadar veya daha fazla anahtara sahipse • u ve v’nin ebeveyninden u ve v arasındaki ayırıcı anahtarı u’ya taşı. • v’nin en sağındaki çocuğunu u’nun en solundaki çocuk yap • ebeveyne u ve v yi ayırmak için v’nin en sağındaki anahtarı taşı

  16. …önceki örnekten devam edersek case 2 v u

  17. devamı

  18. Durum (3): u ve v kardeşleri tam olarak M/2 - 1 anahtar içeriyorsa • u ve v’nin ebeveyninden u ve v arasındaki ayırıcı anahtarı u’ya taşı. • u’daki anahtar ve çocuk işaretçilerini v’ ye taşı • Evebeynden u’ ya olan işaretçiyi kaldır.

  19. Örnek 5 silinmek isteniyor

  20. Devamı u v

  21. Devamı

  22. Devamı Durum 3 v u

  23. Devamı

  24. Devamı

More Related