Berikut ini adalah pertanyaan dari qed pada mata pelajaran TI untuk jenjang Sekolah Dasar
Gambarkan representasinya!
____________
Untuk diperhatikan: terdapat karakter yang sama pada string di atas. Bagaimana Anda menanganinya?
Jawaban dan Penjelasan
Berikut ini adalah pilihan jawaban terbaik dari pertanyaan diatas.
Jawaban dan Penjelasan:
Secara default, binary tree terdiri atas node-node dengan data/key yang unik, karena pada dasarnya binary tree adalah himpunan. Namun, sepengetahuan saya, tidak ada standar baku bahwa memang harus seperti itu. Jadi, sebuah binary tree mungkin saja memiliki node-node yang tidak unik nilai key-nya, atau bahkan terjadi duplikasi node (tidak benar-benar duplikasi, hanya menambahkan sebuah atribut khusus saja).
Untuk membentuk binary tree, agar mudah dalam pencarian node, kita gunakan cara pembentukan binary sorted tree, yaitu key dari akar subpohon kiri bernilai lebih kecil dari key parent-nya. Berikut ini adalah beberapa skenario yang dapat digunakan.
- Key yang disisipkan ke dalam binary tree:
I, N, D, O, N, E, S, I, A, _, 7, 7, _, T, A, H, U, N - Spasi disimbolkan dengan karakter underscore, hanya agar terlihat saja pada pembahasan ini.
- Pembandingan nilainya dilakukan dengan membandingkan kode ASCII dari setiap karakter. Di luar huruf alfabet, kode ASCII dari spasi adalah 32 dan kode ASCII dari 7 adalah 55. Keduanya bernilai kurang dari alfabet kapital pertama.
Skenario 1: Dengan menempatkan node dengan key sama pada subpohon kiri.
(silahkan amati gambar 1)
Skenario 2: Dengan menempatkan node dengan key sama pada subpohon kanan.
(silahkan amati gambar 2)
Skenario 3: Seperti cara standar, dengan memodifikasi struktur data binary tree sehingga setiap node dapat diduplikasi, dengan menambahkan atribut "banyak" (count).
(silahkan amati gambar 3)
Dari ketiga skenario di atas, jelas bahwa skenario ketiga akan menghasilkan struktur pohon yang tidak lebih tinggi dibanding skenario pertama dan kedua.
Semoga dengan pertanyaan yang sudah terjawab oleh henriyulianto dapat membantu memudahkan mengerjakan soal, tugas dan PR sekolah kalian.
Apabila terdapat kesalahan dalam mengerjakan soal, silahkan koreksi jawaban dengan mengirimkan email ke yomemimo.com melalui halaman Contact
Last Update: Sat, 12 Nov 22