Pertemuan – 2
Post on 25-Jan-2016
53 Views
Preview:
DESCRIPTION
Transcript
Pertemuan – 2
List Dipersiapkan oleh : Y. Palopak SSi., MT.
Kita lanjutkan untuk yang satu ini …..
SENARAI / LINK LISTDefinisi :
Struktur data yang terdiri dari rantaian elemen sejenis yang saling berhubungan.
Setiap elemen memiliki pendahulu dan penerusnya (kecuali elemen terakhir)
Setiap elemen akan ditambahkan saat dibutuhkan Setiap elemen tidak dialokasikan dengan tempat tertentu dari awal
Contoh : Struktur ini mirip kereta api, dimana kepalanya seperti lokomotif,
elemennya seperti gerbong kereta dan datanya seperti penumpang/barang
Struktur Data
MODEL SENARAIStruktur Data
X1 X2 X3 X4S
Item / Data
Penunjuk
Kepala/First
NIL
p q r s
KONDISI SENARAIStruktur Data
S
X1S
X1 X2 X3 X4S
Senarai / List KOSONG
Senarai / List dengan 1 elemen
Senarai / List dengan 4 elemen
p q r s
p
Representasi Senarai
NUL
First
Berisi Kantong kosong
First = Pengait awal
Representasi Elemen
NIM
123
Nama
Lio
Nilai
A
NEXT Penunjuk
Ke elemen
berikutnya
Representasi Elemen
NIM
123
Nama
Lio
Nilai
A
Mengakses List
1. Mendeklarasikan sebuah penunjuk elemen bantu yang nantinya digunakan untuk di jalankan maju sebagai penunjuk tiap elemen
2. Mendeklarasikan sebuah List yang akan di akses
3. Penunjuk elemen diarahkan kepada elemen pertama
4. Penunjuk elemen dijalankan maju ke depan seterusnya sampai dijumpai elemen terakhir pada list dimana nilai elemen berikutnya adalah null (kosong)
Type List/Senarai
1. List Kosong
2. List Tunggal
3. List Ganda
List KosongTerdiri dari
sebuah penunjuk elemen Null
Tidak memiliki Elemen – hanya berupa penunjuk awal elemen
First
Null
List Tunggal
List yang elemennya hanya menyimpan informasi elemen setelahnya
Hanya memiliki 1 pengait elemen berikutnya
Pengaksesan hanya dapat dilakuka secara maju
Terdiri atas: List tunggal dengan kepala List tunggal dengan kepala &
Ekor List tunggal berputar
List tunggal dengan kepala
X1 X2 X3
p q r
Null
First/Kepala
Pada awal pengaksesan hanya dapat mengakses
Elemen pertamanya saja karena penunjuk hanya
Berupa penunjuk elemen awal
List Tunggal dengan Kepala & Ekor
X1 X2 X3
p q r
Null
First/Kepala Tail/Ekor
Pada awal pengaksesan dapat mengakses
Elemen awal dan elemen akhir
List tunggal berputar
X1 X2 X3
p q r
First/Kepala
Elemen terakhir ditandai dengan elemen setelahnya
Penelusuran akan berhenti jika penunjuk bantu telah
Sampai pada elemen yang elemen setelahnya sama
Dengan elemen yang ditunjuk oleh penunjuk elemne awal
List Ganda
List yang elemennya menyimpan informasi elemen sebelumnya dan informasi elmen setelahnya
Terdapat dua buah pengait ke elemen sebelum dan setelahnya
Proses penelusuran list dapat dilakukan maju dan mundur
Terdiri atas: List Ganda dengan kepala List Ganda dengan kepala & Ekor List Ganda berputar
List Ganda dengan kepala
Hanya memiliki sebuah penunjuk elemen yaitu
penunjuk elemen awal
X1 X2 X3
p q r
Null
First/Kepala
Null
List Ganda dengan Kepala & Ekor
X1 X2 X3
p q r
Null
First/Kepala Tail/Ekor
Memiliki dua penujuk elemen yaitu
penunjuk elemen awal dan elemen akhir
Null
List Ganda berputar
X1 X2 X3
p q r
First/Kepala
Elemen terakhir ditandai dengan elemen setelahnya
merupakan elemen pertama list yang ditunjuk oleh
penujuk awal list
OPERASI PADA LIST
Operasi berupa penambahan dan penguranan elemen
Operasi tidak dapat dilakukan sembarangan
Dapat dilakukan secara bertahap
Penambahan Elemen di Awal padaList Tunggal
Deklarasikan List Deklarasikan penunjuk bantu yang
menunjuk ke elemen baruArahkan penunjuk elemen baru ke
elemen pertama listArahkan penunjuk elemen
sebelumnya ke elemen baru.Arahkan penunjuk elemen awal (first)
list ke elemen baru.
Penambahan Elemen di Awal padaList Ganda
Deklarasikan List Deklarasikan penunjuk bantu yang
menunjuk ke elemen baru
Penambahan Elemen di Tengah pada List Ganda
Deklarasikan List Deklarasikan penunjuk bantu yang
menunjuk ke elemen baruArahkan penunjuk elemen baru ke
elemen pertama listArahkan penunjuk elemen awal (first)
list ke elemen baru.
top related