TUGAS LATIHAN PERTEMUAN 12

PERTEMUAN 12

MATA KULIAH  : STRUKTUR DATA

LINEAR DOUBLY LINKED LIST

I. Ilustrasi

Ilustrasi Simpul :

Deklarasi :
struct SIMPUL
   int INFO; 
   struct SIMPUL *LEFT; 
   struct SIMPUL *RIGHT; 
}; 
SIMPUL *P,*FIRST,*LAST;

II. Proses

II.1.Inisialisasi
FIRST = NULL; 
LAST =NULL;

II.2.Pembuatan Simpul
void BUAT_SIMPUL(int X) 
   P=(SIMPUL*) malloc(sizeof(SIMPUL)); 
   if(P!=NULL) 
   {
     P->INFO=X;
   }
   else
   {
     cout<<”Pembuatan simpul gagal”;
     exit(1);
   }
}

Akan terbentuk sebuah simpul:

II.3.Pembuatan simpul awal

II.4.Insert Kanan
Menyisipkan sebuah simpul baru pada ujung kanan linked list.
Proses :
- sudah ada linked list
- buat simpul baru
- sisipkan simpul baru tsb diujung kanan linked list
Fungsi :
void INSERT_KANAN(void)
   LAST->RIGHT=P; 
   P->LEFT=LAST; 
   LAST=P; 
   P->RIGHT=NULL; 
}

II.5.Insert Kiri
Menyisipkan sebuah simpul baru pada ujung kiri linked list.
Proses :
- sudah ada linked list
- buat simpul baru
- sisipkan simpul baru tsb diujung kiri linked list
Fungsi : 
void INSERT_KIRI(void) 
   P->RIGHT=FIRST; 
   FIRST->LEFT=P; 
   FIRST=P; 
   P->LEFT=NULL; 
}

II.6.Insert Tengah
Menyisipkan sebuah simpul antara dua buah simpul pada linked list.
Misal akan menyisipkan sebuah simpul antara simpul no 7 dan simpul no 8.

Fungsi : 
void INSERT_TENGAH(void)
   P->RIGHT=Q->RIGHT; 
   P->LEFT=Q; 
   Q->RIGHT->LEFT=P;
   Q->RIGHT=P; 
}

Komentar

Postingan populer dari blog ini

LINEAR QUEUE

STACK/TUMPUKAN

TIPE DATA DAN HIRARKI DATA