Jadi saya baru belajar pohon merah-hitam di Cormen dan wow! Biasanya saya suka memahami semua algoritma dan struktur data hingga saya bisa membangunnya kembali dari awal tanpa harus menyontek melihat kode semu. Saya sangat suka algoritma jadi saya senang belajar bagaimana mereka bekerja dan saya biasanya pergi baris demi baris dan mencoba beberapa kasus dengan melihat kode dan memeriksa apakah yang terjadi adalah apa yang saya pahami yang seharusnya terjadi.
Hanya memahami apa yang terjadi, saya BANYAK waktu untuk pohon RB. Bahkan dengan penjelasan buku itu, saya masih kesulitan memahami kode itu. Belum lagi saya tidak mengerti bagaimana / mengapa rotasi bekerja. Saya tidak menemukan itu intuitif sama sekali. Maksud saya, tiga (enam sebenarnya) kasus berbeda untuk dimasukkan dan kemudian 4 kasus untuk dihapus? Apakah mungkin untuk memahami hal ini? Tidak mungkin bagi saya untuk membangun kembali kode ini tanpa curang. Sampai pohon biner saya dapat mengimplementasikan hal-hal itu dari kepala saya, dengan beberapa penyesuaian akan selalu berhasil, tetapi pohon RB saya bahkan tidak akan mencoba. Maksudku, bahkan guru kadang-kadang bingung, jadi kurasa itu tidak mudah, tetapi pada saat yang sama, tidakkah kita harus memahami semua yang terjadi atau setidaknya mengapa? Buku tidak Saya tidak benar-benar menjelaskan bagaimana seseorang muncul dengan gagasan rotasi. Bagaimana seseorang memperhatikan bahwa dengan 2 rotasi Anda bisa menyelesaikan masalah penyisipan? Itu luar biasa!
Pertanyaan saya adalah, apakah saya benar-benar harus 100% memahami pohon RB? Saya merasa melewatkan hal-hal buruk tanpa sepenuhnya memahaminya. Terima kasih sebelumnya, teman-teman! (PS: tidak ada tag untuk RB-tree, sebenarnya bahkan tidak untuk tree, hanya binary-tree, jadi saya hanya menempatkan algoritma)