pw double linked list

21
DOUBLE LINKED LIST Oleh: Tim struktur data IF UNIKOM

Upload: jupan

Post on 29-Sep-2015

218 views

Category:

Documents


3 download

DESCRIPTION

..

TRANSCRIPT

Bab I - Konsep PBO

Double linked listOleh:Tim struktur data IF UNIKOM

Double Linked ListLinked list dengan simpul berisi satu link / pointer yang mengacu ke simpul berikutnya dan satu link/pointer yang mengacu ke simpul sebelumnya.Simpul Double Linked List :

Medan Data(Info)Medan Sambungan Kanan(Next)Medan Sambungan Kiri(Prev)Deklarasi Double Linked ListTypeNama_Pointer = SimpulSimpul = Record medan_data : tipedata, prev, next : Nama_PointerEndRecord

nama_var_pointer : Nama_Pointer

Contoh Deklarasi Double Linked ListTypePoint = DataData = Record info : integer, next, prev : Point Endrecordawal, akhir : Point

Operasi operasi Double Linked ListPenciptaan (Create)PenyisipanPenghapusanTraversalPencarian (Searching)Pengurutan (Sorting)Penghancuran (Destroy)PenciptaanSama seperti pada Single Linked List.

awalakhirPenyisipan di Depan- List kosong {awal = nil}

awalakhirbaru1Penyisipan di Depan (lanjutan)- List tidak kosong {awal Nil}Mula-mula keadaan list:

awal23akhirbaru1Penyisipan di Depan (lanjutan)

awal23akhir1Keadaan list setelah terjadi penyisipan di depan/awal pada kondisi list tidak kosong:baruPenyisipan di Belakang- List kosong {awal = nil}{sama seperti pada penyisipan di depan}- List tidak kosong {awal Nil}awal23akhirbaru1Penyisipan di Belakang (lanjutan)awal23akhir1Keadaan list setelah terjadi penyisipan di belakang/akhir pada list tidak kosongbaru

Penyisipan di Tengah Misalkan akan menyisipkan angka 4 sebelum angka 9Mula-mula keadaan list sebagai berikut:Penyisipan di Tengah (lanjutan)awal9107akhir5bantubaru4Penghapusan di depan

- Satu Simpulmenjadi

Penghapusan di depan (lanjutan)- Lebih dari Satu Simpulawalphapus5akhir142ElemenPenghapusan di belakang- Satu Simpul {sama seperti penghapusan di depan}awalphapusakhir4Elemen512- Lebih dari Satu SimpulPenghapusan di Tengahawalphapus57910akhirElemenawal5910akhir- Satu Simpul {sama seperti penghapusan di depan}- Lebih dari Satu SimpulMisalkan data yang akan dihapus angka 7Operasi-operasi lainnyaOperasi-operasi lainnya seperti traversal, searching, sorting dan destroy diperlakukan sama seperti pada single linked listTugasUbah tugas yang menggunakan single linked list menjadi double linked list, dengan Menu sbb:MENU UTAMASisip DataHapus DataCari DataTampil DataKeluar

MENU SISIPSisip DepanSisip TengahSisip BelakangKembali ke Menu UtamaMENU HAPUSHapus DepanHapus TengahHapus BelakangKembali ke Menu UtamaMENU CARICari KodeCari Nama/Harga/StokKembali ke Menu UtamaData harus sudah tersusundan memanggil satu subrutin traversal lainnyaMemanggil subrutin penghancuranTERIMA KASIH

Awal

5

9

7

Akhir

10

Awal

5

bantu

9

7

Akhir

10

2

Awal

Akhir