fbpx

Struktur Data : Deklarasi Double Linked List dalam Bahasa C


Bagian dari Double Linked List

Setiap node terdiri dari 3 bagian:

  • Data yang berisi elemen data pada node tersebut
  • Pointer Next yang menunjuk ke node berikutnya
  • Pointer Prev yang menunjuk ke node sebelumnya

Pointer Prev dari node head (elemen pertama) menunjuk NULL

Pointer Next dari node tail (elemen terakhir) menunjuk NULL


Deklarasi

Sama seperti single linked list, setiap node akan berbentuk struct dan memiliki dua buah pointer bertipe struct yang sama yang berfungsi sebagai pointer Prev dan Next.

struct node
{
  int data;
  struct node* next;
  struct node* prev;
};

Pointer harus bertipe sama dengan nilai yang disimpan dalam alamat yang ditunjuk. Sampai dengan potongan program di atas, kita sudah menyiapkan struktur dari tipe data Double Linked List yaitu ptrnode.


Buat Node dengan Alokasi Memory Dinamis

ptrnode createNode(int nilai){
 ptrnode p;
 p = (ptrnode)malloc(sizeof(struct node));
 p->value = nilai;
 p->next = NULL ;
 p->prev = NULL;
 return(p);
}

Berikutnya kita buat fungsi createNode. Fungsi ini digunakan untuk membuat sebuah node baru dengan nilai sesuai dari nilai parameter yang diinputkan. Node baru yang dibentuk masih belum berkait dengan node lain.


Menelusuri Double Linked List

Forward Transverval

Membaca elemen-elemen dalam double linked list mulai dari node pertama dan lewati semua node sampai node menunjuk NULL.

void transverse_beg(mynode head)
{
  mynode tmp = head;
  while (tmp != NULL)
  {
    printf("%d\n", tmp->data);
    tmp = tmp->next;
  }
  printf("Selesai");
}

Backward Transversal

Membaca elemen-elemen dalam double linked list mulai dari node pertama dan lewati semua node sampai node menunjuk NULL

void transverse_end(mynode head)
{
  mynode tmp = tail;
  while (tmp != NULL)
  {
    printf("%d\n", tmp->data);
    tmp = tmp->prev;
  }
  printf("Selesai");
}

Materi Lengkap

Silakan baca juga beberapa artikel menarik kami tentang Double Linked List, daftar lengkapnya adalah sebagai berikut.


Tonton juga video pilihan dari kami berikut ini

Bagikan ke teman-teman Anda

Contact Us

How to whitelist website on AdBlocker?

How to whitelist website on AdBlocker?

  1. 1 Click on the AdBlock Plus icon on the top right corner of your browser
  2. 2 Click on "Enabled on this site" from the AdBlock Plus option
  3. 3 Refresh the page and start browsing the site
error: Content is protected !!
Up