HALF SEMESTER SUMMARY
LINKED LIST
Linked list adalah struktur data yang terdiri dari urutan record data yang dimana pada setiap record datanya terdapat sebuah ruang / bidang / tempat (pointer)untuk menyimpan alamat dari record selanjutnya secara berurutan. Elemen data yang dihubungkan dengan link pada linked list disebut node.
Dalam linked list terdapat istilah head dan tail.
· Head : Elemen yang berada di posisi pertama pada suatu linked list.
· Tail : Elemen yang berada di posisi terakhir pada suatu linked list.
SINGLE LINKED LIST
Merupakan suatu linked list yang hanya memiliki satu variable pointer saja, yang fungsinya untuk menunjuk node selanjutnya.Biasanya field pada tail menunjuk ke arah NULL.
DOUBLE LINKED LIST
Pada doubly/double linked list ini terdapat dua variable pointer yang masing – masing memiliki fungsi untuk menunjuk ke node selanjutnya dan ke node sebelumnya setiap head dan tailnya juga menunjuk ke arah NULL.
CIRCURAL LINKED LIST
Circural Linked List adalah suatu linkedlist yang tidak memiliki nilai NULL untuk medan sambungannya. Terdapat circural single linked list dan circural double linked list.
CIRCURAL SINGLE LINKED LIST
Circural single linked list adalah single linked list yang tidak memiliki nilai null atau dengan kata lain hanya memiliki satu buah pointer saja yang menunjuk ke pointer selanjutnya tapi tidak memiliki nilai null , sehingga pada data terakhir / tail akan menunjuk ke data pertama lagi / head.
CIRCURAL DOUBLE LINKED LIST
Circural doubly/double linked list adalah double linked list yang tidak memiliki nilai null atau dengan kata lain memiliki dua buah pointer yang menunjuk ke pointer/node selanjutnya dan menunjuk ke pointer/node sebelumnya namun tidak memiliki nilai null, sehingga pada data awal/head akan menunjuk ke data terakhir / tail dan sebaliknya.
Pada Linked List baik Single Linked list maupun Double Linked list terdapat operasi Push dan Pop , yaitu operasi untuk untuk menambah data suatu list dan menghapus list.
· Push : Operasi push adalah operasi untuk menambahkan data pada suatu list/ insert data. Terdapat 2 cara melakukan push yaitu push depan dan push belakang , push depan berarti data terbaru dimasukkan didepan data lainnya da sebaliknya untuk push belakang.
· Pop : Operasi Pop adalah operasi untuk menghabpus / delete. Sama sepeti Push terdapat 2 cara melakukan Pop yaitu dengan Pop depan dan Pop belakang , Pop depan berarti data yang akan dihapus adalah data yang paling depan dan sebaliknya pada Pop belakang.
PUSH dan POP
Pada Linked List baik Single Linked list maupun Double Linked list terdapat operasi Push dan Pop , yaitu operasi untuk untuk menambah data suatu list dan menghapus list.
· Push : Operasi push adalah operasi untuk menambahkan data pada suatu list/ insert data. Terdapat 2 cara melakukan push yaitu push depan dan push belakang , push depan berarti data terbaru dimasukkan didepan data lainnya dan sebaliknya untuk push belakang.
· Pop : Operasi Pop adalah operasi untuk menghabpus / delete. Sama sepeti Push terdapat 2 cara melakukan Pop yaitu dengan Pop depan dan Pop belakang , Pop depan berarti data yang akan dihapus adalah data yang paling depan dan sebaliknya pada Pop belakang.
Contoh Push Depan:

Contoh Pop Depan :
Untuk Melakukan Pop terhadap seluruh isi Linked List dapat dilakukan Pop All:
Untuk Menampilkan Isi Struct baik dalam keadaan kosong maupun sudah di push
Berikut adalah contoh penggunaan function pop push dan view diatas :
Saat code diatas di jalankan akan menghasilkan program Push,Pop,dan View ,dibawah ini adalah contoh programnya :
HASHING TABLES AND BINARY TREE
What is hash table?
Hash table adalah sebuah struktur data yang terdiri atas sebuah table dan fungsi yang bertujuan untuk memetakan/menyimpan nilai yang unik/kunci untuk setiap record/baris menjadi dalam bentuk angka/hash. Tujuan dari hash table adalah untuk mempercepat pencarian kembali dari banyak data yang disimpan. Hash table menggunakan suatu teknik penyimpanan sehingga waktu yang dibutuhkan untuk penambahan data (insertions), penghapusan data (deletions), dan pencarian data (searching).
Dalam blockchain hashing dan hash table adalah hal yang paling mendasar karena hash menjaga keamanan data dalam proses blockchain yang begitu cepat. untuk lebih lengkapnya mengenai blockchain silahkan teman-teman baca di https://selembardigital.com/apa-itu-hashing-di-bawah-tudung-blockchain/
Ini adalah sebuah contoh hash table dengan ukuran n = 20, dalam ukuran 20 berarti terdapat 20 ruang/posisi yang di sebut slot. Hash table pada mulanya tidak berisi / kosong namun saat kita isi dengan key akan ada isinya dan akan dihitung dengan rumus KEY % Table Size (Jumlah Slot).
Jika kita lihat dalam hashing bisa terjadi collision karena index yang mau digunakan sudah terpakai.Dalam kasus ini kita bisa mencari index kosong dengan melihat ke cell berikutnya sampai kita menemukan yang kosong. Teknik ini dinamakan LINEAR PROBING.
Berikut adalah contoh operasi dalam hash table :
Tree dan Binary Tree
Tree atau pohon merupakan struktur data yang tidak linear yang digunakan untuk mempresentasikan data yang bersifat hirarki antara elemen-elemennya. Definisi tree yaitu kumpulan elemen yang salah satu elemennya disebut root (akar) dan elemen yang lain disebut simpul ( node) yang terpecah menjadi sejumlah kumpulan yang tidak saling berhubungan satu sama lain yang disebut sub-tree atau cabang. Salah satu jenis tree yang akan kita bahas saat ini adalah binary tree.
| Tree Example |
Apa itu binary tree..?
Binary tree adalah tree dengan syarat bahwa tiap node hanya boleh memiliki maksimal dua subtree dan kedua subtree tersebut harus terpisah. Sesuai dengan definisi tersebut, maka tiap node dalam binary tree hanya boleh memiliki paling banyak dua child. Ada beberapa jenis binary tree :
- Full Binary Tree
Full binary tree adalah binary tree yang tiap node-nya (kecuali leaf) memiliki dua child dan tiap subtree harus mempunyai panjang path yang sama.
| Full Binary Tree |
- Complete Binary Tree
Complete binary t ree adalah binary tree yang mirip dengan full binary tree, namun tiap subtree boleh memiliki panjang path yang berbeda. Node kecuali leaf memiliki 0 atau 2 child.
| Complete Binary Tree |
- Skewed Binary Tree
Skewed binary tree adalh binary tree yang semua node nya (kecuali leaf) hanya memiliki satu child.
| Skewed Binary Tree |
- Binary Search Tree
Binary search tree adalah jenis pohon terurut yang digunakan untuk menyimpan data sehingga memudahkan pencarian kembali data tersebut.
Binary Search Tree
Sumber Pembelajaran :
|


















Comments
Post a Comment