Tuesday, February 25, 2020

SINGLE LINKED LIST CIRCULAR

Materi Pertemuan 25 Feb 2020(GSLC LINKED LIST II)

Hal-hal yang di bahas :
1.Circular Single Linked List
2.Doubly Linked List
3.Circular Double Linked List


Single Linked List Circular (SLLC) 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

Ilustrasi single linked list circular:





Proses pembuatan

Untuk pembatab head digunakan fungsi malloc untk menyediakan ruang memory bagi pointer head data pertama yang dibuat langsung diletakkan pada head dan membuat pointer untuk next
l=head;
  for(i=0;i<n1;i++)
  {
              printf("masukkan nilai node : ",i+1);
              scanf("%d",&n);
              l->num=n;
              l->next=((struct list *)malloc(sizeof(struct list)));
              l=l->next;
   l->next=0;

penyisipan

pertama melakkan pengecekan apakah ini data pertama yang akan di masukkan dengan meihat pada pointer next bernilai 0
selanjutnya kita akan memasukkan data yang akan mengganti posisi dari head

                                    x=((struct list *)malloc(sizeof(struct list)));
                                    x->num=val;
                                    x->next=l;
                                    y->next=x;


penghapusan

pertama melakukan pengecekan apakah yang dihapus pada head jika tidak maka nilai yang akan dihapus akan merubah posisinya dengan memindahkan nilai pointer head
  {   head=l->next;  }
ke pointer next dan dilakukan proses perpindahan
(pos==i)
{ l=l->next;
            y->next=l;
            }
            y=l;l=l->next;

CARA KERJA
input data ke head
head
1  << pointer next

menyisipkan data pertama misal 3
3          1  posisi head berposisi 1 pindah ke 2 dan kemudian selanjutnya    
pada proses penghapusan ini merupakan perubahan arah head ke pointer next baru di hapus








No comments:

Post a Comment