Diktat_Prosedural_10_VariasiListLinier

Untuk elemen yang bukan terakhir nextptr ptr list

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: y@. Untuk elemen yang bukan terakhir: Next(Ptr) ≠ Ptr List kosong: First(L) = dummy@ List Sirkuler First List sirkuler dengan 3 elemen First List First sirkuler List sirkuler dengan 1 elemen List dengan representasi ini sebenarnya tidak mempunyai “First”. First yang dibuat hanya berupa “Current Pointer” saja. Representasi ini dipakai jika dilakukan proses terus menerus terhadap anggota list (misalnya dalam round robin services pada sistem operasi). Seakan-akan terjadi suatu “loop”. Perhatikan bahwa dengan representasi ini, penambahan dan penghapusan pada elemen pertama akan berakibat harus melakukan traversal untuk mengubah Next dari elemen Last. Jika L adalah sebuah list, dan P adalah alamat elemen list, maka ciri dari list dengan representasi ini adalah: Elemen pertama: First(L) = P, dengan P adalah address salah satu elemen list Elemen terakhir: Last(L) = P, Next(P) = First List kosong: First(L) = Nil Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 2 November 2011 6 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB List dengan Pointer Ganda Elemen List dengan pointer ganda : INFO PREV NEXT First List dengan 3 elemen First First 1 elemen kosong List dengan pointer ganda dibutuhkan jika harus dilakukan banyak operasi terhadap elemen suksesor dan juga predesesor. Dengan tersedianya alamat predesesor pada setiap elemen list, maka memorisasi Prec pada beberapa algoritma yang pernah ditulis dapat dihindari. Perhatikan bahwa dengan representasi ini: • operasi dasar menjadi sangat “banyak” (buat sebagai latihan wajib) • memori yang dibutuhkan membesar Jika list lojik semacam ini direpresentasi secara kontigu dengan tabel, maka sangat menguntungkan karena memorisasi Prev dan Next dilakukan dengan kalkulasi. List dengan pointer ganda pada contoh ini adalah list ber-pointer ganda yang paling sederhana. List bentuk lain dapat pula diimplementasi dengan pointer ganda seperti pada contoh-contoh yang berikutnya. Jika L adalah sebuah list, dan P adalah alamat elemen list, maka ciri dari list dengan representasi ini adalah : Elemen pertama: First(L) Elemen terakhir: Last(L) = P, dan Next(P) = Nil List kosong: First(L) = Nil Untuk sebuah address P yang merupakan address elemen list, maka didefinisikan Next(P) Prev(P) Info(P) Oleh: Inggriani Liem/Revisi bab...
View Full Document

Ask a homework question - tutors are online