Skip to main content

Binary Search Tree


  • Pengertian :
    • Binary Search Tree adalah tree yang terurut (ordered Binary Tree). Aturan yang harus dipenuhi untuk membangun sebuah BST adalah sebagai berikut:Semua data dibagian kiri sub-tree dari node t selalu lebih kecil dari data dalam node t itu sendiri.Semua data dibagian kanan sub-tree dari node t selalu lebih besar atau sama dengan data dalam node t.
  • Contoh penggunaan :
  • Operasi dasar dalam BTS :
    • Search :  
      • Memulai Pencarian Dari Root
      • Jika Root adalah value yang kita cari , maka berhenti
      • Jika x lebih kecil dari root maka cari kedalam rekrusif tree sebelah kiri
      • Jika x lebih besar dari root maka cari kedalam rekrusif tree sebelah kanan
    • Insertion :
      • Dimulai dari root
      • jika x lebih kecil dari node value(key) kemudian cek dengan sub-tree sebelah kiri lakukan pengecekan secara berulang ( rekrusif )
      • jika x lebih besar dari node value(key) kemudian cek dengan sub-tree sebelah kanan lakukan pengecekan secara berulang ( rekrusif )
      • Ulangi sampai menemukan node yang kosong untuk memasukan value X ( X akan selalu berada di paling bawah biasa di sebut Leaf atau daun )
    • Remove :
      • Jika value yang ingin dihapus adalah Leaf(Daun) atau paling bawah , langsung delete
      • Jika value yang akan dihapus mempunyai satu anak, hapus nodenya dan gabungkan anaknya ke parent value yang dihapus
      • jika value yang akan di hapus adalah node yang memiliki 2 anak , maka ada 2 cara , kita bisa cari dari left sub-tree anak kanan paling terakhir(leaf) (kiri,kanan)

Comments

Popular posts from this blog

Linked List

Linked List: -Definisi: struktur data yang terdiri dari urutan record data dimana setiap record memliki field yang menyimpan alamat/referensi dari record selanjutnya (dalam urutan) elemen data yang dihubungkan dengan link pada linked list disebut Node. Biasanya didalam suatu lnked list, terdapat istilah head( elemen yang berada pada posisi pertama dalam suatu linked list ) dan tail.(   element yang berada pada posisis terakhir dalam suatu linked list ). -Contoh Linked List: 1. Singly Linked List : suatu linked list yang hanya memiliki satu varuabel pointer saja. Dimana pointer tersebut menunjuk ke node selanjutnya.Biasanya field pada tail menunjuk ke NULL,example: Sumber : socs.binus.ac.id 2. Doubly Linked List:  linked list yang memiliki dua variabel pointer yaitu pointer yang menunjuk ke node selanjutnya dan pointer yang menunuk ke node sebelumnya. Setiap head dan tailnya juga menunjuk ke NULL.example: Sumber: https://www.geeksforgeeks.org/doubly-linke...