Posts

AVL TREE

AVL Tree adalah Binary Search Tree yang memiliki perbedaan tinggi/ level maksimal 1 antara subtree kiri dan subtree kanan. AVL Tree muncul untuk menyeimbangkan Binary Search Tree. Dengan AVL Tree, waktu pencarian dan bentuk tree dapat dipersingkat dan disederhanakan. Terdapat beberapa perintah yang dapat di berikan kepada avl tree. Diantaranya adalah insert dan delete. Pada insert terdapat beberapa kemungkinan. Kemungkinan pertama adalah saat avl tree ditambahkan, avl tetap stabil (beda tinggi kiri dan kanan tidak lebih dari 1) maka insert dilakukan seperti biasa. Kemungkinan kedua adalah terjadi ketidak seimbangan. Bila terjadi ketidak seimbangan maka kita harus mengecek 2 node setelah node yang tidak seimbang. Bila 2 node yang meada yang membuat tidak seimbang berada pada 1 garis lurus (missal kiri dan kiri) maka lakukan single rotation. Bila tidak lurus( missal kiri lalu kanan) maka lakukan double rotation. Perintah kedua yang dapat dilakukan pada avl tree adalah delete. Pada p...

Binary Search Tree

Image
Binary search tree adalah gabungan node node yang mengikuti aturan. Aturan pada binary search tree adalah: 1.        Node sebelah kiri harus lebih kecil dari value node tersebut 2.        Sedangkan yang kanan harus lebih besar 3.        Node sebalh kiri dan kanan haruslah juga memiliki struktur yang sama Berikut adalah contoh binary search tree Ada beberapa operasi yang dapat dilakukan pada BTS, yaitu a.        Searching b.        Insert c.        Delete Berikut adalh contoh penggunaan binary search tree #include <stdio.h> #include <stdlib.h> //inisialisasi struct struct data{         int number;         //pointer untuk menampung percabangan kiri dan kanan      ...

Review

  Apa itu linked list? Linked List  merupakan koleksi linear dari data, yang disebut sebagai  nodes,  dimana setiap  node  akan menunjuk pada  node  lain melalui sebuah  pointer .  Linked List  dapat didefinisikan pula sebagai kumpulan  nodes  yang merepresentasikan sebuah  sequence. Jenis jenis linked list: ·       Single Linked List : Merupakan suatu linked list yang hanya memiliki satu variabel pointer saja. Dimana pointer tersebut menunjuk ke node selanjutnya. Biasanya field pada tail menunjuk ke NULL. ·       Double Linked List : Merupakan suatu linked list yang memiliki dua variabel pointer yang menunjuk ke node selanjutnya dan pointer yang menunjuk ke node sebelumnya. Setiap head dan tail juga menunjuk ke NULL. ·       Circular Linked List : Merupakan suatu linked list dimana tail(node terakhir...

Hash & Binary tree

Hash adalah adalah suatu  kode dari hasil enkripsi yang umumnya terdiri dari huruf maupun angka yang acak. . Fungsi Hash sendiri adalah memetakan data digital agar diperoleh hash yang menunjukkan ukuran tepat dari file tersebut. Beberapa algoritma hashing yang kita kenal adalah : ·        MD5 ·        SHA ·        SHA256 ·        CRC , SHA 1, SHA 2 , Dll Fungsi  hash  haruslah stabil (referential transparent), artinya, jika ia dipanggil dua kali oleh masukan yang benar-benar sama(sebagai misal,string yang mengandung sekuen karakter yang sama), maka ia haruslah memberi hasil yang sama pula.  Binary Tree  adalah sebuah  pohon   struktur data  di mana setiap  simpul  memiliki paling banyak dua  anak . Binary Tree atau Pohon Biner adalah sebuah pohon dalam struktur data yang bersifat hirarkis (hubun...

Linked List 2

Linked list merupakan list yang saling berhubungan, tiap list berhubungan dengan dengan list lainnya dengan menyimpan alamat dari listt selanjutnya atau sebelumnya. berikut adalah hal hal yang dapat dilakuan kepada linked list: 1.      Menambahkan List menambahakn item kepada list dapat dengan 3 cara: ·        Menambahkan di depan maka cara menambahkan item nya adalah dengan memindakan head ke item baru tersebut dan menaruh alamat head yang baru pada pointer (*) next dari head yang baru ·        Menambahkan di belakang Kurang lebih yara yang di lakukan sama dengan penambhana di depan, namun yang di ubah adalah tail nya, jadi tail yang lama akan menyimpan alamat dari item yang akan di simpan lalu tail di ubah menjadi item baru tersebut ·        Menambahkan di dalam / tengah tengah Untuk melakukan ini di butuhkan bantuan temp, temp adalah alamat dari item sebelum...

Linked List

Apa itu linked list? Linked List  merupakan koleksi linear dari data, yang disebut sebagai  nodes,  dimana setiap  node  akan menunjuk pada  node  lain melalui sebuah  pointer .  Linked List  dapat didefinisikan pula sebagai kumpulan  nodes  yang merepresentasikan sebuah  sequence. Jenis jenis linked list: ·        Single Linked List : Merupakan suatu linked list yang hanya memiliki satu variabel pointer saja. Dimana pointer tersebut menunjuk ke node selanjutnya. Biasanya field pada tail menunjuk ke NULL. ·        Double Linked List : Merupakan suatu linked list yang memiliki dua variabel pointer yang menunjuk ke node selanjutnya dan pointer yang menunjuk ke node sebelumnya. Setiap head dan tail juga menunjuk ke NULL. ·        Circular Linked List : Merupakan suatu linked list dimana tail(node terakhir) menunjuk ke head ...