Struktur Data - Tree
Halaman 1
TREE (POHON)
Tree/pohon merupakan struktur data yang tidak linear/non linear yang digunakan
terutama untuk merepresentasikan hubungan data yang bersifat hierarkis antara elemen-
elemennya.
Definisi tree : “Kumpulan elemen yang salah satu elemennya disebut dengan root
(akar) dan sisa elemen yang lain disebut sebagai simpul (node/vertex) yang terpecah
menjadi sejumlah himpunan yang tidak saling berhubungan satu sama lain, yang disebut
subtree/cabang”.
Ilustrasi :
Simpul Tunggal : T
Subtree : T1, T2, ..., Tk
Tree yang terbentuk dari simpul T (root) dan Simpul T1, T2, … Tk adalah :
T
T2T1 Tk...
Perhatikan contoh tree (Gambar 1)
Tree Level
N O
L M
G HF
C
J K
D E
I
B
A
Level 1
Level 2
Level 3
Level 4
Level 5
Gambar 1. Contoh Tree
T
T1 T2 Tk…
Struktur Data - Tree
Halaman 2
Istilah-istilah objek tree, adalah :
 Simpul adalah elemen tree yang berisi informasi / data dan penunjuk pencabangan.
 Tingkat/level suatu simpul ditentukan dari akar (root), sebagai level 1. Apabila simpul
dinyatakan sebagai tingkat N, maka simpul-simpul yang merupakan anaknya berada
pada tingkat N+1.
 Derajat/degree menyatakan banyaknya anak/turunan di simpul tersebut.
Contoh : Simpul A memiliki derajat 2 (B dan C), simpul yang memiliki derajat 0 (nol)
disebut leaf (daun) seperti : I, J, K, L, N, dan O.
 Tinggi (height) atau kedalaman (depth) suatu tree adalah tingkat maksimum dari tingkat
dalam tree tersebut dikurangi 1.
Contoh dalam tree di atas, mempunyai depth 4.
 Ancestor suatu simpul adalah semua simpul yang terletak dalam satu jalur dengan
simpul tersebut, dari akar sampai simul yang ditinjaunya.
Contoh Ancestor L adalah A,C dan G.
 Predecessor adalah simpul yang berada di atas simpul yang ditinjau.
Contoh : Predecessor D adalah B.
 Successor adalah simpul yang berada di bawah simpul yang ditinjau.
Contoh : Successor D adalah I.
 Descendant adalah seluruh simpul yang terletak sesudah simpul tertentu dan terletak
pada jalur yang sama.
Contoh : Descendant E adalah J dan K.
 Sibling adalah simpul-simpul yang memiliki parent yang sama dengan simpul yang
ditinjau.
Contoh : Sibling J adalah K
 Parent adalah simpul yang berada satu level di atas simpul yang ditinjau.
Contoh : Parent J adalah E
Struktur Data - Tree
Halaman 3
BINARY TREE
Sebuah pohon biner T dapat didefinisikan sebagai sekumpulan terbatas dari elemen-elemen
yang disebut node/simpul dimana :
a. T dikatakan kosong (disebut NULL Tree/pohon NULL atau empty tree/pohon kosong)
b. T terdiri dari sebuah node khusus yang dipanggil R, disebut root dari T dan node-node
T lainnya membentuk sebuah pasangan terurut dari binary tree T1 dan T2 yang tidak
berhubungan yang kemudian dipanggil subtree kiri dan subtree kanan.
Jika T1 tidak kosong maka rootnya disebut successor kiri dari R dan jika T2 tidak kosong,
maka rootnya disebut successor dari R.
Contoh :
Tree (T) Keterangan
K
I J
GF
C
H
D E
B
A  Root dari T adalah simpul A.
 B adalah successor kiri dari simpul A.
 C adalah successor kanan dari A
 Subtree kiri dari root A adalah simpul
B, D, E, dan H
 Subtree kanan dari root A adalah
simpul C, F, G, I, J dan K
Gambar 2. Contoh Binary Tree
Dua buah binary tree dikatakan similar/identik jika tree tersebut memiliki struktur/bentuk
yang sama . Contoh :
C D
B
A Similar/identik dengan
G H
F
E
Gambar 3. Contoh Binary Tree yang Similar
Struktur Data - Tree
Halaman 4
Terminologi
R adalah sebuah simpul pada T dengan successor kiri S1, dan successor kanan S2, maka R
disebut parent dari S1 dan S2. S1 disebut anak kiri (left child) dari R, dan S2 adalah anak
kanan (right child) dari R. S1 dan S2 dikatakan sibling (bersaudara).
Derajat tertinggi dari sebuah simpul binary tree adalah 2.
Banyaknya simpul maksimum pada tingkat/level N adalah 2 (N-1)
, sehingga maksimum
simpul sampai tingkat ke-N adalah
1221
)1(
: 
 N
n
i
i
MaksSimpul
sehingga jika binary tree lengkap bertingkat 5 maka banyaknya simpul adalah 25
-1 = 31,
terdiri dari 16 leaf (daun) dan banyaknya simpul yang bukan daun termasuk akar adalah 15.
Jenis-Jenis Binary Tree
1. Complete Binary Tree
Suatu binary tree T akan disebut complete/lengkap jika semua levelnya memiliki child
2 buah kecuali untuk level paling akhir. Tetapi pada akhir level setiap leaf/daun muncul
terurut dari sebelah kiri, seperti terlihat pada Gambar 4.
6
3
4 5
2
1
7
8 9 10 11 12
Gambar 4. Contoh Complete Tree T
Sebuah binary tree yang lengkap dapat diberi label dengan sebuah bilangan bulat dari
posisi kiri ke kanan. Dengan pemberian label ini, seseorang dapat dengan mudah
menentukan child dan parent dari sebuah node/simpul K dalam sebuah complete tree Tn.
Khususnya, left child (anak kiri) dari simpul K dapat diketahui dengan rumus 2 * K,
dan right child (anak kanan) dari simpul K dapat diketahui dengan rumus 2 * K+1.
Perhatikan di gambar bahwa simpul 5 mempunyai anak 10 (dari 2 * 5) dan 11 (dari 2 *
5 + 1). Sedangkan untuk mencari parent, rumusnya adalah K / 2 sehingga ketika simpul
6 yang diperiksa, itu berarti bahwa parent dari simpul 6 adalah 6 / 2 = 3.
Struktur Data - Tree
Halaman 5
2. Extended Binary Tree : 2-Tree
Sebuah binary tree dikatakan 2-tree atau extended binary tree jika tiap simpul N
memiliki 0 atau 2 anak. Simpul dengan 2 anak disebut dengan simpul internal (internal
node), dan simpul dengan 0 anak disebut dengan external node. Kadang-kadang dalam
diagram node-node tersebut dibedakan dengan menggunakan tanda lingkaran untuk
internal node dan kotak untuk eksternal node.
Contoh :
Gambar 5. Binary tree T Gambar 6. Extended 2-tree
Struktur Data - Tree
Halaman 6
Pembuatan Binary Tree
Pembuatan binary tree lebih mudah menggunakan binary search tree (binary sorted tree)
dengan cara : “ Jika nilai dari simpul yang akan disisipkan lebih besar dari simpul parent,
maka simpul tersebut ditempatkan sebagai subtree kanan. Jika lebih kecil maka simpul baru
tersebut disimpan sebagai subtree kiri”.
Contoh :
Tree yang akan dibuat adalah : HAKCBLJ
 H dijadikan sebagai root
 A < H : A menjadi subtree kiri H
 K > H : K menjadi subtree kanan H
 C < H  C > A : C menjadi subtree
kanan dari A.
 B < H  B > A  B < C : B menjadi
subtree kiri dari C.
 L > H  L > K : L menjadi subtree
kanan dari K.
 J < H  J < K : J menjadi subtree kiri
dari K.
J
K
C
A
H
L
B
Struktur Data - Tree
Halaman 7
Penelusuran Binary Tree (Traversing Binary Tree)
Ada tiga cara yang standar untuk menelususi sebuah binary tree yaitu :
1. Preorder (Node – Left – Right [NLR])
 Proses root
 Telusuri subtree kiri (Left) secara preorder
 Telusuri subtree kanan (Right) secara preorder
2. Inorder (Left – Node – Right [LNR])
 Telusuri subtree kiri (Left) secara inorder
 Proses root
 Telusuri subtree kanan (Right) secara inorder
3. Postorder (Left – Right – Node [LNR])
 Telusuri subtree kiri (Left) secara postorder
 Telusuri subtree kanan (Right) secara postorder
 Proses root
Contoh :
E
C
D
B
A
F
G H I
Secara preorder :
ABDGCEHIF
Secara inorder :
DGBAHEICF
Secara postorder :
GDBHIEFCA
Struktur Data - Tree
Halaman 8
Pembentukan Binary Tree berdasarkan Preorder, Inorder atau Postorder
Untuk membentuk suatu binary tree berdasarkan preorder, inorder atau postorder dapat
dilakukan dengan syarat menggunakan 2 dari tiga penelusuran tersebut dan salah satunya
harus inorder.
Contoh 1: [Menggunakan Preorder dan Inorder]:
Preorder : ABDGCEHIF
Inorder : DGBAHEICF
Caranya adalah :
1. Telusuri sepanjang preorder
2. Didapat A, kemudian jadikan sebagai Root
3. Ambil B, lihat di inorder. B berada sebelah kiri dari A,
maka B ditulis di kiri dari A.
4. Ambil D, lihat di inorder. D berada di sebelah kiri dari
A, tetapi sebelah kiri dari A ada B. Bandingkan posisi D
dengan B yang ada di inorder. Ternyata D ada di sebelah
kiri dari B sehingga D menjadi subtree B.
5. Ambil G, ikuti cara 4. ternyata G ada disebelah kanan
dari D sehingga G menjadi subtree kanan dari G.
6. Ambil C, lihat di inorder, ternyata C ada disebelah
kanan dari A, sehingga C menjadi subtree kanan dari A.
7. Ambil E, ternyata sebelah kanan dari A serta sebelah
kiri dari C sehingga E menjadi kiri dari C.
8. Ambil H, ternyata ada di sebelah kanan A serta sebelah
kanan dari C dan sebelah kiri dari E sehingga H menjadi
kiri dari E.
9. Ambil I, ternyata ada di sebelah kanan dari A serta
sebelah kiri dari C, dan sebelah kanan E sehingga I
menjadi subtree kanan dari E.
10. Ambil F ternyata ada di sebelah kanan C serta sebelah
kanan dari C sehingga C menjadi subtree kanan dari C.
E
C
D
B
A
F
G H I
Struktur Data - Tree
Halaman 9
Contoh 2 [Menggunakan Postorder dan Inorder]:
Postorder : GDBHIEFCA
Inorder : DGBAHEICF
Cara mirip dengan contoh 1, tetapi penelusuran dilakukan
pada postorder secara terbalik (dari paling belakang).
Caranya adalah :
1. Ambil dari postorder dapat A, jadikan sebagai root.
2. Ambil C, periksa posisi C di inorder terhadap A,
ternyata ada di sebelah kanan. Sehingga C subtree kanan
dari A.
3. Ambil F, ternyata ada di sebelah kiri dari A dan sebelah
kanan dari C sehingga F menjadi subtree kanan dari C.
4. Ambil E, ternyata ada di sebelah kanan dari A dan
sebelah kiri dari C sehingga E menjadi subtree kiri C.
5. Ambil I, ternyata ada di sebelah kanan dari A, sebelah
kiri dari C, sebelah kanan dari E sehingga I menjadi
subtree kanan dari C.
6. Ambil H, ternyata ada di kanan A, sebelah kiri dari C,
sebelah kiri dari E sehingga H menjadi subtree kiri dari
E.
7. Ambil B, ternyata B ada disebelah kiri A sehingga B
adalah subtree kiri dari A.
8. Ambil D, ternyata ada di kiri A dan dikiri B, sehingga D
menjadi subtree kiri dari B.
9. Ambil G, ternyata ada di kiri A, di kiri B dan dikanan
dari D sehingga G menjadi subtree kanan dari D.
E
C
D
B
A
F
G H I
Struktur Data - Tree
Halaman 10
Latihan-Latihan :
1. Ada sebuah binary tree kosong, kemudian diinsertkan : J R D G T E M H P A F Q
a. Gambarkan binary tree nya
b. Tentukan Inorder, Postorder, dan Preordernya
2. Inorder : EACKFHDBG
Preorder : FAEKCDHGB
a. Gambarkan binary tree-nya
b. Tentukan Postordernya

More Related Content

PPT
Struktur Data Tree
DOCX
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
PPTX
Ruang Hasil kali Dalam ( Aljabar Linear Elementer )
DOCX
Makalah Algoritma kruskal
PPTX
Graf ( Matematika Diskrit)
PPT
Pertemuan 3 relasi & fungsi
PDF
Pengertian dan Representasi Graph
PDF
Matematika Diskrit - 09 graf - 07
Struktur Data Tree
Matematika diskrit (dual graf, lintasan dan sirkuit euler, lintasan dan sirku...
Ruang Hasil kali Dalam ( Aljabar Linear Elementer )
Makalah Algoritma kruskal
Graf ( Matematika Diskrit)
Pertemuan 3 relasi & fungsi
Pengertian dan Representasi Graph
Matematika Diskrit - 09 graf - 07

What's hot (20)

PPT
Graf pohon (bagian ke 6)
PPTX
integral fungsi kompleks
PPTX
Bab 12-kode-huffman
PPTX
Graf Pohon
PPTX
Bab 4 aljabar boolean
PPTX
Analisis Vektor ( Bidang )
PPT
Stat d3 7
DOCX
Eliminasi gauss
PPT
Fungsi Gamma dan Beta (Kalkulus Peubah Banyak)
PPT
LKMM-TD: AKL (Analisis Kondisi Lingkungan) by Mudafiq
PDF
Beberapa distribusi peluang kontinu
PDF
Matematika diskrit tree
DOCX
Persamaan garis lurus(Geometri Analitik Ruang)
PDF
6 Materi Kuliah Normalisasi Tabel Database
PPTX
Algoritma pencarian lintasan jalur terpendek
PPTX
Pushdown Automata
PDF
Matematika Diskrit - 09 graf - 06
PDF
Perancangan dan Analisa Sistem
DOCX
Menentukan sistem persamaan linier dalam bentuk sistem konsisten dan inkonsisten
PPTX
Pertemuan 6 & 7 ars. gerbang logika
Graf pohon (bagian ke 6)
integral fungsi kompleks
Bab 12-kode-huffman
Graf Pohon
Bab 4 aljabar boolean
Analisis Vektor ( Bidang )
Stat d3 7
Eliminasi gauss
Fungsi Gamma dan Beta (Kalkulus Peubah Banyak)
LKMM-TD: AKL (Analisis Kondisi Lingkungan) by Mudafiq
Beberapa distribusi peluang kontinu
Matematika diskrit tree
Persamaan garis lurus(Geometri Analitik Ruang)
6 Materi Kuliah Normalisasi Tabel Database
Algoritma pencarian lintasan jalur terpendek
Pushdown Automata
Matematika Diskrit - 09 graf - 06
Perancangan dan Analisa Sistem
Menentukan sistem persamaan linier dalam bentuk sistem konsisten dan inkonsisten
Pertemuan 6 & 7 ars. gerbang logika
Ad

Similar to Bab x tree (pohon) (20)

PPT
Bab 9 tree
PPTX
power point struktur data tree atau pohon
PPTX
PDF
Algoritma dan Struktur Data - pohon biner
PPT
Materi perkuliahan struktur data Pertemuan tentang 14 - Tree.ppt
PDF
Algoritma dan Struktur Data - Pohon Biner
PPTX
Asd sesi tree part1
PPT
Struktur data 04 (binary tree)
PDF
Buku struktur data pages-111-122
PPT
Tistrukdat10
PPT
Materi Struktur Data Tree
PPT
Struktur affif
PPTX
12 Tree.pptx pre-order Inorder post order
DOC
Queue dan tree
PPTX
ASD-6 - Tree dan Binary Search Tree.pptx
PDF
Pertemuan 9 Tree dan BinaryTree
Bab 9 tree
power point struktur data tree atau pohon
Algoritma dan Struktur Data - pohon biner
Materi perkuliahan struktur data Pertemuan tentang 14 - Tree.ppt
Algoritma dan Struktur Data - Pohon Biner
Asd sesi tree part1
Struktur data 04 (binary tree)
Buku struktur data pages-111-122
Tistrukdat10
Materi Struktur Data Tree
Struktur affif
12 Tree.pptx pre-order Inorder post order
Queue dan tree
ASD-6 - Tree dan Binary Search Tree.pptx
Pertemuan 9 Tree dan BinaryTree
Ad

More from Materi Kuliah Online (20)

PDF
Sekilas tentang HaKI
PDF
Pengenalan Rekayasa Perangkat Lunak
PDF
Pemodelan Basis Data Lainnya
PDF
Arsitektur Sistem Basis Data
PDF
Access control-systems
PDF
Melangkah dengan Microsoft Windows Server 2003
PDF
Studi Mengenai Aspek Privasi pada Sistem RFID
PDF
Remote control alarm sepeda motor
PDF
Internet dan Layanan Aplikasi Terdistribusi
PDF
Aspek Security pada Penerapan m-Commerce di Indonesia
PDF
A Comparison of Proximity Authentication Approaches
PDF
Kajian Perkembangan Teknologi Smart Card dari Segi Keamanan
PDF
Catu Daya dan Rangkaian Penyearah Gelombang
PDF
Dioda dan Catu Daya
PDF
Simulasi Anti Integral Windup dengan Clamp Integrator
PDF
Radio Frequency Identification
PDF
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
PDF
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
PDF
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
PDF
Interfacing Number Display
Sekilas tentang HaKI
Pengenalan Rekayasa Perangkat Lunak
Pemodelan Basis Data Lainnya
Arsitektur Sistem Basis Data
Access control-systems
Melangkah dengan Microsoft Windows Server 2003
Studi Mengenai Aspek Privasi pada Sistem RFID
Remote control alarm sepeda motor
Internet dan Layanan Aplikasi Terdistribusi
Aspek Security pada Penerapan m-Commerce di Indonesia
A Comparison of Proximity Authentication Approaches
Kajian Perkembangan Teknologi Smart Card dari Segi Keamanan
Catu Daya dan Rangkaian Penyearah Gelombang
Dioda dan Catu Daya
Simulasi Anti Integral Windup dengan Clamp Integrator
Radio Frequency Identification
Prinsip-prinsip Asas E-Construction, K-Constructions dan Groupware Technology
Penggunaan DT-51 Untuk Komunikasi Mikrokontroler Melalui Jaringan Telepon
Penggunaan DT-Basic Untuk Membaca Nomor Identitas Secara Wireless
Interfacing Number Display

Recently uploaded (20)

PPTX
Tools of Digital Media in Marketing Era Digital 4.0_WEBINAR PDPTN "Digital Ma...
PDF
Materi Sosialisasi OMI Jawa Timur 2025.pdf
PPTX
Sistem Pencernaan Manusia IPAS Presentasi Pendidikan Hijau Kuning Bingkai Ilu...
PPTX
Materi Refleksi Akhir Tahun Sutan Raja.pptx
PDF
Aminullah Assagaf_B34_Statistik Ekonometrika Terapan_22 Agus 2025.pdf
DOCX
Modul Ajar Deep Learning Informatika Kelas 10 SMA Terbaru 2025
PDF
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
PPTX
Pengimbasan pembelajaran mendalam (deep learning
PPT
Inkuiri Kolaboratif bagi guru di Satuan Pendidikan .ppt
PPTX
Merancang dan Mengelola PESAN dalam Komunikasi Pemasaran di Era Digital 4.0_W...
PPTX
PDF_Penyelarasan_Visi,_Misi,_dan_Tujuan_
PDF
Bahan Bacaan Rencana Kolaborasi Inkuiri.pdf
PPTX
Inkuiri_Kolaboratif_Pembelajaran_Mendalam (1).pptx
PDF
Materi PPT Seminar #AITalks: AI dan Iman
PPTX
ppt_bola_basket_kelas x sma mata pelajaran pjok.pptx
PDF
MRT Tangguh, Indonesia Maju: Mewujudkan Transportasi Publik yang Aman, Nyaman...
PDF
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
PDF
Faktor-Faktor Pergeseran dari Pemasaran Konvensional ke Pemasaran Modern
PDF
BukuKeterampilanMengajar-MNCPublishing2019.pdf
DOCX
Modul Ajar Deep Learning PKWU Pengelolaan Kelas 11 SMA Terbaru 2025
Tools of Digital Media in Marketing Era Digital 4.0_WEBINAR PDPTN "Digital Ma...
Materi Sosialisasi OMI Jawa Timur 2025.pdf
Sistem Pencernaan Manusia IPAS Presentasi Pendidikan Hijau Kuning Bingkai Ilu...
Materi Refleksi Akhir Tahun Sutan Raja.pptx
Aminullah Assagaf_B34_Statistik Ekonometrika Terapan_22 Agus 2025.pdf
Modul Ajar Deep Learning Informatika Kelas 10 SMA Terbaru 2025
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
Pengimbasan pembelajaran mendalam (deep learning
Inkuiri Kolaboratif bagi guru di Satuan Pendidikan .ppt
Merancang dan Mengelola PESAN dalam Komunikasi Pemasaran di Era Digital 4.0_W...
PDF_Penyelarasan_Visi,_Misi,_dan_Tujuan_
Bahan Bacaan Rencana Kolaborasi Inkuiri.pdf
Inkuiri_Kolaboratif_Pembelajaran_Mendalam (1).pptx
Materi PPT Seminar #AITalks: AI dan Iman
ppt_bola_basket_kelas x sma mata pelajaran pjok.pptx
MRT Tangguh, Indonesia Maju: Mewujudkan Transportasi Publik yang Aman, Nyaman...
Aminullah Assagaf_B34_Statistik Ekonometrika.pdf
Faktor-Faktor Pergeseran dari Pemasaran Konvensional ke Pemasaran Modern
BukuKeterampilanMengajar-MNCPublishing2019.pdf
Modul Ajar Deep Learning PKWU Pengelolaan Kelas 11 SMA Terbaru 2025

Bab x tree (pohon)

  • 1. Struktur Data - Tree Halaman 1 TREE (POHON) Tree/pohon merupakan struktur data yang tidak linear/non linear yang digunakan terutama untuk merepresentasikan hubungan data yang bersifat hierarkis antara elemen- elemennya. Definisi tree : “Kumpulan elemen yang salah satu elemennya disebut dengan root (akar) dan sisa elemen yang lain disebut sebagai simpul (node/vertex) yang terpecah menjadi sejumlah himpunan yang tidak saling berhubungan satu sama lain, yang disebut subtree/cabang”. Ilustrasi : Simpul Tunggal : T Subtree : T1, T2, ..., Tk Tree yang terbentuk dari simpul T (root) dan Simpul T1, T2, … Tk adalah : T T2T1 Tk... Perhatikan contoh tree (Gambar 1) Tree Level N O L M G HF C J K D E I B A Level 1 Level 2 Level 3 Level 4 Level 5 Gambar 1. Contoh Tree T T1 T2 Tk…
  • 2. Struktur Data - Tree Halaman 2 Istilah-istilah objek tree, adalah :  Simpul adalah elemen tree yang berisi informasi / data dan penunjuk pencabangan.  Tingkat/level suatu simpul ditentukan dari akar (root), sebagai level 1. Apabila simpul dinyatakan sebagai tingkat N, maka simpul-simpul yang merupakan anaknya berada pada tingkat N+1.  Derajat/degree menyatakan banyaknya anak/turunan di simpul tersebut. Contoh : Simpul A memiliki derajat 2 (B dan C), simpul yang memiliki derajat 0 (nol) disebut leaf (daun) seperti : I, J, K, L, N, dan O.  Tinggi (height) atau kedalaman (depth) suatu tree adalah tingkat maksimum dari tingkat dalam tree tersebut dikurangi 1. Contoh dalam tree di atas, mempunyai depth 4.  Ancestor suatu simpul adalah semua simpul yang terletak dalam satu jalur dengan simpul tersebut, dari akar sampai simul yang ditinjaunya. Contoh Ancestor L adalah A,C dan G.  Predecessor adalah simpul yang berada di atas simpul yang ditinjau. Contoh : Predecessor D adalah B.  Successor adalah simpul yang berada di bawah simpul yang ditinjau. Contoh : Successor D adalah I.  Descendant adalah seluruh simpul yang terletak sesudah simpul tertentu dan terletak pada jalur yang sama. Contoh : Descendant E adalah J dan K.  Sibling adalah simpul-simpul yang memiliki parent yang sama dengan simpul yang ditinjau. Contoh : Sibling J adalah K  Parent adalah simpul yang berada satu level di atas simpul yang ditinjau. Contoh : Parent J adalah E
  • 3. Struktur Data - Tree Halaman 3 BINARY TREE Sebuah pohon biner T dapat didefinisikan sebagai sekumpulan terbatas dari elemen-elemen yang disebut node/simpul dimana : a. T dikatakan kosong (disebut NULL Tree/pohon NULL atau empty tree/pohon kosong) b. T terdiri dari sebuah node khusus yang dipanggil R, disebut root dari T dan node-node T lainnya membentuk sebuah pasangan terurut dari binary tree T1 dan T2 yang tidak berhubungan yang kemudian dipanggil subtree kiri dan subtree kanan. Jika T1 tidak kosong maka rootnya disebut successor kiri dari R dan jika T2 tidak kosong, maka rootnya disebut successor dari R. Contoh : Tree (T) Keterangan K I J GF C H D E B A  Root dari T adalah simpul A.  B adalah successor kiri dari simpul A.  C adalah successor kanan dari A  Subtree kiri dari root A adalah simpul B, D, E, dan H  Subtree kanan dari root A adalah simpul C, F, G, I, J dan K Gambar 2. Contoh Binary Tree Dua buah binary tree dikatakan similar/identik jika tree tersebut memiliki struktur/bentuk yang sama . Contoh : C D B A Similar/identik dengan G H F E Gambar 3. Contoh Binary Tree yang Similar
  • 4. Struktur Data - Tree Halaman 4 Terminologi R adalah sebuah simpul pada T dengan successor kiri S1, dan successor kanan S2, maka R disebut parent dari S1 dan S2. S1 disebut anak kiri (left child) dari R, dan S2 adalah anak kanan (right child) dari R. S1 dan S2 dikatakan sibling (bersaudara). Derajat tertinggi dari sebuah simpul binary tree adalah 2. Banyaknya simpul maksimum pada tingkat/level N adalah 2 (N-1) , sehingga maksimum simpul sampai tingkat ke-N adalah 1221 )1( :   N n i i MaksSimpul sehingga jika binary tree lengkap bertingkat 5 maka banyaknya simpul adalah 25 -1 = 31, terdiri dari 16 leaf (daun) dan banyaknya simpul yang bukan daun termasuk akar adalah 15. Jenis-Jenis Binary Tree 1. Complete Binary Tree Suatu binary tree T akan disebut complete/lengkap jika semua levelnya memiliki child 2 buah kecuali untuk level paling akhir. Tetapi pada akhir level setiap leaf/daun muncul terurut dari sebelah kiri, seperti terlihat pada Gambar 4. 6 3 4 5 2 1 7 8 9 10 11 12 Gambar 4. Contoh Complete Tree T Sebuah binary tree yang lengkap dapat diberi label dengan sebuah bilangan bulat dari posisi kiri ke kanan. Dengan pemberian label ini, seseorang dapat dengan mudah menentukan child dan parent dari sebuah node/simpul K dalam sebuah complete tree Tn. Khususnya, left child (anak kiri) dari simpul K dapat diketahui dengan rumus 2 * K, dan right child (anak kanan) dari simpul K dapat diketahui dengan rumus 2 * K+1. Perhatikan di gambar bahwa simpul 5 mempunyai anak 10 (dari 2 * 5) dan 11 (dari 2 * 5 + 1). Sedangkan untuk mencari parent, rumusnya adalah K / 2 sehingga ketika simpul 6 yang diperiksa, itu berarti bahwa parent dari simpul 6 adalah 6 / 2 = 3.
  • 5. Struktur Data - Tree Halaman 5 2. Extended Binary Tree : 2-Tree Sebuah binary tree dikatakan 2-tree atau extended binary tree jika tiap simpul N memiliki 0 atau 2 anak. Simpul dengan 2 anak disebut dengan simpul internal (internal node), dan simpul dengan 0 anak disebut dengan external node. Kadang-kadang dalam diagram node-node tersebut dibedakan dengan menggunakan tanda lingkaran untuk internal node dan kotak untuk eksternal node. Contoh : Gambar 5. Binary tree T Gambar 6. Extended 2-tree
  • 6. Struktur Data - Tree Halaman 6 Pembuatan Binary Tree Pembuatan binary tree lebih mudah menggunakan binary search tree (binary sorted tree) dengan cara : “ Jika nilai dari simpul yang akan disisipkan lebih besar dari simpul parent, maka simpul tersebut ditempatkan sebagai subtree kanan. Jika lebih kecil maka simpul baru tersebut disimpan sebagai subtree kiri”. Contoh : Tree yang akan dibuat adalah : HAKCBLJ  H dijadikan sebagai root  A < H : A menjadi subtree kiri H  K > H : K menjadi subtree kanan H  C < H  C > A : C menjadi subtree kanan dari A.  B < H  B > A  B < C : B menjadi subtree kiri dari C.  L > H  L > K : L menjadi subtree kanan dari K.  J < H  J < K : J menjadi subtree kiri dari K. J K C A H L B
  • 7. Struktur Data - Tree Halaman 7 Penelusuran Binary Tree (Traversing Binary Tree) Ada tiga cara yang standar untuk menelususi sebuah binary tree yaitu : 1. Preorder (Node – Left – Right [NLR])  Proses root  Telusuri subtree kiri (Left) secara preorder  Telusuri subtree kanan (Right) secara preorder 2. Inorder (Left – Node – Right [LNR])  Telusuri subtree kiri (Left) secara inorder  Proses root  Telusuri subtree kanan (Right) secara inorder 3. Postorder (Left – Right – Node [LNR])  Telusuri subtree kiri (Left) secara postorder  Telusuri subtree kanan (Right) secara postorder  Proses root Contoh : E C D B A F G H I Secara preorder : ABDGCEHIF Secara inorder : DGBAHEICF Secara postorder : GDBHIEFCA
  • 8. Struktur Data - Tree Halaman 8 Pembentukan Binary Tree berdasarkan Preorder, Inorder atau Postorder Untuk membentuk suatu binary tree berdasarkan preorder, inorder atau postorder dapat dilakukan dengan syarat menggunakan 2 dari tiga penelusuran tersebut dan salah satunya harus inorder. Contoh 1: [Menggunakan Preorder dan Inorder]: Preorder : ABDGCEHIF Inorder : DGBAHEICF Caranya adalah : 1. Telusuri sepanjang preorder 2. Didapat A, kemudian jadikan sebagai Root 3. Ambil B, lihat di inorder. B berada sebelah kiri dari A, maka B ditulis di kiri dari A. 4. Ambil D, lihat di inorder. D berada di sebelah kiri dari A, tetapi sebelah kiri dari A ada B. Bandingkan posisi D dengan B yang ada di inorder. Ternyata D ada di sebelah kiri dari B sehingga D menjadi subtree B. 5. Ambil G, ikuti cara 4. ternyata G ada disebelah kanan dari D sehingga G menjadi subtree kanan dari G. 6. Ambil C, lihat di inorder, ternyata C ada disebelah kanan dari A, sehingga C menjadi subtree kanan dari A. 7. Ambil E, ternyata sebelah kanan dari A serta sebelah kiri dari C sehingga E menjadi kiri dari C. 8. Ambil H, ternyata ada di sebelah kanan A serta sebelah kanan dari C dan sebelah kiri dari E sehingga H menjadi kiri dari E. 9. Ambil I, ternyata ada di sebelah kanan dari A serta sebelah kiri dari C, dan sebelah kanan E sehingga I menjadi subtree kanan dari E. 10. Ambil F ternyata ada di sebelah kanan C serta sebelah kanan dari C sehingga C menjadi subtree kanan dari C. E C D B A F G H I
  • 9. Struktur Data - Tree Halaman 9 Contoh 2 [Menggunakan Postorder dan Inorder]: Postorder : GDBHIEFCA Inorder : DGBAHEICF Cara mirip dengan contoh 1, tetapi penelusuran dilakukan pada postorder secara terbalik (dari paling belakang). Caranya adalah : 1. Ambil dari postorder dapat A, jadikan sebagai root. 2. Ambil C, periksa posisi C di inorder terhadap A, ternyata ada di sebelah kanan. Sehingga C subtree kanan dari A. 3. Ambil F, ternyata ada di sebelah kiri dari A dan sebelah kanan dari C sehingga F menjadi subtree kanan dari C. 4. Ambil E, ternyata ada di sebelah kanan dari A dan sebelah kiri dari C sehingga E menjadi subtree kiri C. 5. Ambil I, ternyata ada di sebelah kanan dari A, sebelah kiri dari C, sebelah kanan dari E sehingga I menjadi subtree kanan dari C. 6. Ambil H, ternyata ada di kanan A, sebelah kiri dari C, sebelah kiri dari E sehingga H menjadi subtree kiri dari E. 7. Ambil B, ternyata B ada disebelah kiri A sehingga B adalah subtree kiri dari A. 8. Ambil D, ternyata ada di kiri A dan dikiri B, sehingga D menjadi subtree kiri dari B. 9. Ambil G, ternyata ada di kiri A, di kiri B dan dikanan dari D sehingga G menjadi subtree kanan dari D. E C D B A F G H I
  • 10. Struktur Data - Tree Halaman 10 Latihan-Latihan : 1. Ada sebuah binary tree kosong, kemudian diinsertkan : J R D G T E M H P A F Q a. Gambarkan binary tree nya b. Tentukan Inorder, Postorder, dan Preordernya 2. Inorder : EACKFHDBG Preorder : FAEKCDHGB a. Gambarkan binary tree-nya b. Tentukan Postordernya