CARA MEMBUAT SINGLE LINKED LIST DENGAN BORLAND C++
description
Transcript of CARA MEMBUAT SINGLE LINKED LIST DENGAN BORLAND C++
CARA MEMBUAT SINGLE LINKED LIST
DENGAN BORLAND C++
PENDAHULUAN....Sebelum kita mulai membuat
Single Linked List, kita sudah tahu bahwa sebuah Single Linked List
terdiri dari beberapa elemen. Dan setiap elemen memiliki 2 ruang,
yaitu INFO dan NextPointerDan untuk Single Linked List,
hanya memiliki satu NextPointer yang menuju elemen selanjutnya
SINGLE LINKED LISTPembentukan Single-linked list
memerlukan : Deklarasi tipe simpul Deklarasi variabel pointer penunjuk
awal linked list Pembentukan simpul baru Pengaitan simpul beru ke linked list
yang telah terbentuk
MENDEKLARASIKAN ELEMEN DENGAN SEBUAH STRUCTMembuat sebuah struct berisi 2 field, field info
bertipe integer dan field next bertipe pointer
struct TElemen{
int info; struct TElemen *next;};
MENDEKLARASIKAN BEBERAPA VARIABEL POINTER Mendeklarasikan beberapa variabel pointer
bertipe struct TElemenVariabel tersebut digunakan sebagai awal dari
linked list, elemen aktif dalam linked list dan elemen sementara yang akan digunakan membuat elemen baru
Dan beri nilai awal NULL untuk masing2 variabel
struct TElemen *first=NULL, *aktif=NULL, *bantu=NULL;
MEMBUAT SINGLE LINKED LISTNYA...Membuat single linked list dengan nilai yang telah
ditentukan (dengan perulangan)Buat perulangan untuk info 1 s/d 5
for (i=1;i<=5;i++)
membuat 5 elemen, yang masing2 elemen berisikan info dari 1 s/d 5, dengan menggunakan fungsi malloc()
bantu = (struct TElemen *) malloc(sizeof(struct TElemen));
bantu->info = i;
MEMBUAT SINGLE LINKED LISTNYA...Lalu membuat elemen dan penghubungnya. Awalnya : uji apakah FIRST elemen bernilai
NULL..??
if(first==NULL) { first = bantu; aktif = bantu; }
B next
NULL next
NULL next
bantu
first
aktif
NULL
NULL
NULL
B next NULLfirst=aktif=bantu
MEMBUAT SINGLE LINKED LISTNYA...Sekarang.... Bagaimana kalau FIRST tidak
bernilai NULL..??1. Hubungkan pointer next dari elemen aktif
(aktif) ke node yang baru saja dibuat2. Elemen aktif (aktif) kemudian dipindah ke
elemen yang baru saja dibuatelse { aktif->next = bantu; aktif = bantu; }
C next
B next
bantu
head=aktif
NULL
NULL C next
B next
NULL
MEMBUAT SINGLE LINKED LISTNYA...Setelah semua selesai dibuat, saatnya
menghubungkan pointer next untuk mata rantai terakhir ke NULL
aktif->next = NULL;
MEMBUAT SINGLE LINKED LISTNYA...Mencetak field x untuk semua elemen. Dari FIRST sampai elemen
terakhir
aktif = first;While(aktif=NULL){
cout<<" "<<aktif->info<<"-->"; aktif=aktif->next;}cout<<"NULL"<<endl;
1. Meletakkan elmt aktif (aktif) ke posisi FIRST. 2. Kunjungi satu persatu emlt dengan memindahkan emlt aktif
(aktif) ke posisi sebelahnya3. Semua kunjungan akan dilakukan apabila elmt aktif (aktif) tidak
menemui nilai NULL
BAGAIMANA GUYS....???
OK....Selamat MENCOBA....
Kalau sudah mengerti, coba membuat SINGLE LINKED LIST dengan jumlah elemen dan info
tiap elemen diinput manual....