Tuesday, March 3, 2020

Single Linked List




Single Linked List adalah jenis linked list yang hanya bisa menunjuk ke node berikutnya, berbeda dengan Double Linked List yang bisa menunjuk sebelumnya.Di dalam Rangkuman ini, kita akan melakukan beberapa fungsi seperti men-insert node baru, men-delete node baru, dan mengeprint semua isi node nya.

1. Insert

Untuk melakukan insert di dalam Single Linked List, kita bisa melakukannya dengan men-insert di depan (pushHead), menginsert di belakang (pushTail).


Membuat fungsi createaccount untuk node baru



Disini kita akan membuat fungsi yang berguna untuk membuat node baru. Di baris pertama, kita ingin mengalokasikan memory yang akan digunakan untuk node baru kita. Caranya adalah dengan syntax malloc. malloc berguna untuk memberi tahu kepada mesin untuk menyediakan memory untuk node yang akan kita buat. Berikutnya kita melakukan strcpy untuk mengcopy email dan password yang kita masukkan kedalam email dan password yang merupakan atribut  node. kemudian kita set node->next = NULL untuk memberi tahu mesin bahwa setelah node itu tidak ada apa-apa. Ini berguna untuk melakukan insert. dan terakhir kita return node kita tadi untuk dimasukkan kedalam pushHead.

pushHead

untuk membuat pushHead, dapat dilihat sebagai berikut :


Disini saya membuat fungsi pushHead untuk struct yang memiliki atribut email dan password. Tahap pertama dalam membuat pushHead adalah membuat pointer baru dimana kita mengunakan fungsin createaccount yang sudah di contohkan diatas. setelah kita mendeklarasikan pointer node nya, kita melakukan selection. Jika head == NULL, maka kita akan membuat Head dan Tail yang baru. Tapi jika sudah ada, maka kita akan bilang bahwa node->next = head dan head = node. Ini berguna untuk mendorong head yang lama sehingga node yang baru kita masukkan menjadi head yang baru.

pushTail

untuk membuat pushTail, dapat dilihat sebagai berikut :


Disini saya membuat fungsi pushTail yang berfungsi untuk memasukkan node baru di setelah Tail (node terakhir). ini bisa dilakukan dengan struktur codingan yang sama dengan pushHead namun bedanya di else kita membuat next dari tail sebagai node yang baru, dan node yang baru kita jadikan tail.


2. Delete

Delete dapat dilakukan dengan 3 cara : yaitu popHead, popMid, dan popTail.

popHead

untuk membuat popHead, dapat dilihat sebagai berikut :



popTail

uintuk membuat popTail, dapat dilihat sebagai berikut :



popMid

untuk membuat popMid, dapat dilihat sebagai berikut :


3. Print

untuk membuat fungsi print, dapat dilakukan sebagai berikut :


4. Inisiasi

untuk menggunakan semua fungsi ini, kita dapat memanggilnya di main dengan cara sebagai berikut :


No comments:

Post a Comment

Summary Linked List Sebelum dimulai, saya ingin memberikan pengertian sedikit apa itu  Linked List .  Linked List  adalah sebuah  Da...