Linked List Implementation
Linked List-Peretemuan2
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
-Single
Linked List
-Polynomial
Representation
-Circular
Single Linked List
-Doubly
Linked List
-Circular
Doubly Linked List
-Header
Linked List
Pertama saya akan membahas tentang "Single Linked List"
Single Linked List adalah sekumpulan dari node yang salig terhubung dengan node lain melalui sebuah pointer. Rangkaian single linked list tersebut diawali dengan sebuah head untuk menyimpan alamat awal dan di akhiri dengan node yang mengarah pointer ke null.
Di dalam sebuah linked list ada 1 pointer yang menjadi gambaran besar, yakni pointer yang menunjuk pada node pertama di dalam linked list itu sendiri. Sebuah linked list dikatakan kosong apabila isi pointer head adalah NULL.
Beberapa operasi yang biasanya ada di dalam sebuah linked list adalah :
1. Push
2. Pop
Apabila didefinisikan sebuah linked list sebagai berikut :
Polynomial Representation adalah Polinomial yang diberikan sebagai 6x3 + 9x2 + 1
Setiap istilah individu dalam polinom terdiri dari dua bagian, koefisien dan kekuatan.
Di sini, 6, 9, 7, dan 1 adalah koefisien dari persyaratan yang masing-masing memiliki 3, 2, 1, dan 0 sebagai kekuatan masing-masing.
Setiap istilah polinomial dapat direpresentasikan sebagai simpul dari linked list.
Circular Single Linked List adalah Single Linked List yang pointer nextnya menunjuk pada dirinya sendiri. Jika Single Linked List tersebut terdiri dari beberapa node,
maka pointer next pada node terakhir akan menunjuk ke node terdepannya.
Pembuata Single Linked List Circular
Deklarasi node
Dibuat dari struct berikut ini:
typedef struct TNode{
int data;
TNode *next;
Deklarasi Pointer Penunjuk Kepala Single Linked List
Manipulasi linked list tidak bisa dilakukan langsung ke node yang dituju,melainkan harus melalui node pertama dalam linked list. Deklarasinya sebagai berikut:
TNode *head;
Fungsi Inisialisasi Single LinkedList void init(){ head = NULL; }
Function untuk mengetahui kosong tidaknya Single LinkedList int isEmpty(){ if(head == NULL) return 1; else return 0; }
Doubly Linked List adalah data daftar yang tertaut struktur dengan dua link, satu yang berisi refernsi ke data berikutnya dan satu yang berisi referensi ke data sebelumnya.
Di dalam sebuah linked list ada 1 pointer yang menjadi gambaran besar, yakni pointer yang menunjuk pada node pertama di dalam linked list itu sendiri. Sebuah linked list dikatakan kosong apabila isi pointer head adalah NULL.
Beberapa operasi yang biasanya ada di dalam sebuah linked list adalah :
1. Push
2. Pop
Apabila didefinisikan sebuah linked list sebagai berikut :
Polynomial Representation adalah Polinomial yang diberikan sebagai 6x3 + 9x2 + 1
Setiap istilah individu dalam polinom terdiri dari dua bagian, koefisien dan kekuatan.
Di sini, 6, 9, 7, dan 1 adalah koefisien dari persyaratan yang masing-masing memiliki 3, 2, 1, dan 0 sebagai kekuatan masing-masing.
Setiap istilah polinomial dapat direpresentasikan sebagai simpul dari linked list.
Circular Single Linked List adalah Single Linked List yang pointer nextnya menunjuk pada dirinya sendiri. Jika Single Linked List tersebut terdiri dari beberapa node,
maka pointer next pada node terakhir akan menunjuk ke node terdepannya.
Pembuata Single Linked List Circular
Deklarasi node
Dibuat dari struct berikut ini:
typedef struct TNode{
int data;
TNode *next;
Deklarasi Pointer Penunjuk Kepala Single Linked List
Manipulasi linked list tidak bisa dilakukan langsung ke node yang dituju,melainkan harus melalui node pertama dalam linked list. Deklarasinya sebagai berikut:
TNode *head;
Fungsi Inisialisasi Single LinkedList void init(){ head = NULL; }
Function untuk mengetahui kosong tidaknya Single LinkedList int isEmpty(){ if(head == NULL) return 1; else return 0; }
Doubly Linked List adalah data daftar yang tertaut struktur dengan dua link, satu yang berisi refernsi ke data berikutnya dan satu yang berisi referensi ke data sebelumnya.
struct tnode {
int
value;
struct
tnode *next;
struct
tnode *prev;
};
•
struct tnode *head = 0;
struct tnode *tail = 0;
Circular Doubly Linked List Ini mirip dengan linked list melingkar tunggal, tapi total pointer di setiap node di sini adalah 2 (dua) pointer.
Ilustrasi circular doubly linked list :
Header Linked List adalah tipe khusus linked list yang berisi node header di awal daftar. Jadi, dalam sebuah header linked list, START (L) tidak akan mengarah ke simpul pertama dari daftar tapi START (L) akan berisi alamat simpul header.
Kesimpulannya Linked list adalah struktur data yang terdiri dari urutan data record sehingga masing-masing record ada field yang berisi referensi ke record berikutnya dalam urutan.
Komentar
Posting Komentar