List2012a - WordPress.com
Download
Report
Transcript List2012a - WordPress.com
Pertemuan – 2
List
Dipersiapkan oleh : Y. Palopak SSi., MT.
Kita lanjutkan
untuk yang satu ini …..
SENARAI / LINK LIST
Struktur Data
Definisi
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
MODEL SENARAI
Struktur Data
S
p
q
r
s
X1
X2
X3
X4
Kepala/First
Item /
Data
Penunjuk
NIL
KONDISI SENARAI
Struktur Data
S
Senarai / List KOSONG
p
S
X1
Senarai / List dengan 1 elemen
S
p
q
r
s
X1
X2
X3
X4
Senarai / List dengan 4 elemen
Representasi Senarai
First
Berisi Kantong kosong
First = Pengait awal
NUL
Representasi Elemen
NIM
123
Nama
Nilai
Lio
A
NEXT
Penunjuk
Ke elemen
berikutnya
Representasi Elemen
Nama
Lio
NIM
123
Nilai
A
Mengakses List
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)
1.
Type List/Senarai
1.
List Kosong
2.
List Tunggal
3.
List Ganda
List Kosong
Terdiri
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
First/Kepala
p
q
r
X1
X2
X3
Null
Pada awal pengaksesan hanya dapat mengakses
Elemen pertamanya saja karena penunjuk hanya
Berupa penunjuk elemen awal
List Tunggal dengan Kepala & Ekor
First/Kepala
Tail/Ekor
p
q
r
X1
X2
X3
Null
Pada awal pengaksesan dapat mengakses
Elemen awal dan elemen akhir
List tunggal berputar
First/Kepala
p
q
r
X1
X2
X3
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
First/Kepala
Null
p
q
r
X1
X2
X3
Null
Hanya memiliki sebuah penunjuk elemen yaitu
penunjuk elemen awal
List Ganda dengan Kepala & Ekor
First/Kepala
Null
Tail/Ekor
p
q
r
X1
X2
X3
Memiliki dua penujuk elemen yaitu
penunjuk elemen awal dan elemen akhir
Null
List Ganda berputar
First/Kepala
p
q
r
X1
X2
X3
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 pada
List Tunggal
Deklarasikan
List
Deklarasikan penunjuk bantu yang
menunjuk ke elemen baru
Arahkan penunjuk elemen baru ke
elemen pertama list
Arahkan penunjuk elemen
sebelumnya ke elemen baru.
Arahkan penunjuk elemen awal (first)
list ke elemen baru.
Penambahan Elemen di Awal pada
List 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 baru
Arahkan penunjuk elemen baru ke
elemen pertama list
Arahkan penunjuk elemen awal (first)
list ke elemen baru.