Linked List
Linked List atau dikenal juga dengan sebutan senarai
berantai adalah struktur data yang terdiri dari urutan record data dimana
setiap record memiliki field yang menyimpan alamat/referensi dari record
selanjutnya (dalam urutan). Elemen data yang dihubungkan dengan link pada
Linked List disebut Node. Biasanya didalam suatu linked list, terdapat istilah
head dan tail.
- Head adalah elemen
yang berada pada posisi pertama dalam suatu linked list
- Tail adalah elemen
yang berada pada posisi terakhir dalam suatu linked list
Ada beberapa macam Linked List, yaitu :
- Single Linked List
- Double Linked List
- Circular Linked List
- Multiple Linked List
Single 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.
contoh :
contoh codingannya :
struct Mahasiswa{
char nama[25];
int usia;
struct Mahasiswa *next;
}*head,*tail;
struct Mahasiswa{
char nama[25];
int usia;
struct Mahasiswa *next;
}*head,*tail;
Double Linked List
Double Linked List merupakan suatu linked list yang memiliki
dua variabel pointer yaitu pointer yang menunjuk ke node selanjutnya dan
pointer yang menunjuk ke node sebelumnya. Setiap head dan tailnya juga menunjuk
ke NULL.
contoh :
contoh :
contoh codingannya :
struct Mahasiwa{
char nama[25];
int usia;
struct Mahasiswa *next,*prev;
}*head,*tail;
struct Mahasiwa{
char nama[25];
int usia;
struct Mahasiswa *next,*prev;
}*head,*tail;
Circular Linked List
Circular Linked List merupakan suatu linked list dimana tail
(node terakhir) menunjuk ke head (node pertama). Jadi tidak ada pointer yang
menunjuk NULL. Ada 2 jenis Circular Linked List, yaitu :
- Circular Single Linked List
- Circular Double Linked List
Multiple Linked List
Multiple Linked List merupakan suatu linked list yang
memiliki lebih dar 2 buat variabel pointer. contoh :
Header Linked List
Selain ke-4 jenis Linked List diatas, ada juga jenis lain
yaitu header linked list. Header linked list merupakan header spesial yang
terdiri dari node headernya. Jadi, linked list jenis ini tidak menunjuk pada
node pertama (head) namun hanya menyimpan alamat dari node headernya.
Priority Queue
Priority Queue mirip dengan queue biasa, hanya saja queue ini
di urutkan berdasarkan prioritasnya. Misalnya kita ingin membuat queue
berdasarkan umur yang paling muda ke tua. Maka umur menjadi prioritas.
Penyusunan node ini mungkin mirip seperti sorting.
Contoh kodingannya:
Referensi
- https://dewa18.wordpress.com/2009/10/28/struktur-data-macam-macam-linked-list/
- http://suciantinovi.blogspot.co.id/2014/03/linked-list-i_14.html
0 komentar:
Posting Komentar