Rabu, 30 April 2014

Tipe Data Abstrak : Tree N-er

Hai semua. Dalam post ini kita akan sedikit membahas seputar Tree N-er dan penggunaannya dalam bahasa C, yuk kita coba bahas sama-sama.

Tree N-er adalah bentuk lain dari Binary Tree (pohon biner), namun keduanya masih sama-sama tree, artinya keduanya memiliki fungsi yang sama dalam penggunaannya. Misalnya digunakan untuk menyimpan data yang memiliki hubungan (relasi) berupa turunan (dan sebagainya) dengan data lainnya, juga seringkali digunakan pada DCS (decision support system).

Nah, bedanya dengan Binary Tree adalah jika binary tree setiap simpulnya (node) hanya diizinkan untuk memiliki maksimal 2 child, namun di tree n-er ini sebuah simpul diizinkan memiliki n buah anak, dengan n lebih besar atau sama dengan nol.

Contoh Tree N-er - www.cs.berkeley.edu


Sudah jelas kan ya perbedaan dari Tree N-er dengan Binary Tree?
Nah sekarang kita bahas prosedur - fungsi apa saja yang biasanya digunakan pada tree yuk

Make Tree

Inisialisasi sebuah tree, dengan mengisikan data ke simpul root, serta menetapkan bahwa simpul root tidak memiliki sibling dan child.

addChild

Mengalokasikan suatu simpul baru yang sudah kita isikan dengan data terhadap suatu simpul yang menjadi parent-nya. Lalu kita tetapkan juga bahwa simpul baru tersebut tidak memiliki sibling dan child.

delChild

Baiknya, kita melakukan proses delete jika child suatu simpul diketahui memiliki child atau sibling terlebih dahulu hingga simpul yang ingin kita hapus anaknya memang sudah 'aman'. Cara lain yang biasa dilakukan adalah kita langsung saja set bahwa childnya null.
Cara pertama dinilai lebih baik, karena tidak akan ada data yang menjadi 'zombie' ketimbang cara kedua.

findSimpul

Fungsi ini menurut saya sangat sering dilakukan, karena memang diperlukan diberbagai macam permasalahan. Algoritmanya adalah kita menelusuri setiap simpul hingga dapat ditentukan ditemukan atau tidak simpul dengan informasi tertentu yang sedang kita cari. Dan jangan lupa untuk me-return simpul tersebut agar bisa digunakan untuk proses lainnya.

printTree

Standar aja ya kalo ini, print secara pre order, post order, dan level order.

Oke segitu aja tentang tree n-er. Kodingan akan di share maleman, karena biar pada ngetik source code yang dicatet di kelas dulu. Bye there~

Unduh mesin tree n-er http://goo.gl/wejrQz

Tidak ada komentar:

Posting Komentar