Push and Pop Linked List

Review 3 Maret 2020

Dari materi yang diajarkan di kelas besar pada tanggal 3 Maret 2020, saya mempelajari cara menggunakan push dan pop dalam singly dan double linked list.

Push: Insert elemen ke dalam linked list
Pop: Kebalikannya push, menghilangkan elemen dari linked list

Contoh codingan pop pada singly linked list:

void pop()
{
curr = head;
while(curr->next!=tail){
curr = curr->next;
}
free(tail);
tail = curr;
tail->next = NULL;
}

Contoh codingan push pada double linked list:

void push(int a)
{
curr = (struct Data*)malloc(sizeof(struct Data);
curr->value = a;
if(head -- NULL){
head = tail = curr;
}
else
{
tail->next = curr;
curr->prev = tail;
tail = curr;
}
tail->next = NULL;
}

Contoh codingan pop pada double linked list:

void pop2()
{
if(tail == head){
free(curr);
tail = head = curr = NULL;
}
else
{
tail = tail->prev;
free(tail->next);
tail->next = NULL;
}
}

Dalam function pop, digunakan "free" untuk menghindari error dan crash saat dicompile.

Cara print semua value dalam linked list:

curr =head;
while(curr!=NULL){
printf("%d\n", curr->value);
curr = curr->next;
}
}

Baik single maupun double linked list, memiliki cara pop dan push yang hampir sama, namum perlu diperhatikan bahwa pada double linked list, current dapat berpindah ke node sebelumnya dengan prev.

Reminder:
Dalam single maupun double linked list, sebelum head dan setelah tail adalah NULL.




Comments

Popular posts from this blog

Hashing table & Binary Tree

Laporan Akhir Mata Kuliah Human and Computer Interaction Aplikasi Predical

FINAL SUMMARY