LINKED LIST
..Struktur Data.. A1
Kelompok 3
Ketua :
Anggota :
1.
2.
3.
4.
Pengertian Linked List
Linked list (one way list) adalah suatu kumpulan elemen data (yang disebut sebagai node)
dimana urutannya ditentukan oleh suatu pointer. Setiap elemen (node) dari suatu linked list terdiri
atas dua bagian, yaitu :
a) INFO , berisi informasi tentang elemen data yang bersangkutan.
b) NEXT (link field/next pointer field), berisi alamat dari elemen (node) selanjutnya yang dituju.
Berikut ini sebuah contoh linked list yang terdiri atas 4 node :
Pada node ke-4 field NEXT-nya berisi NULL, artinya node ke-4 tersebut adalah node terakhir.
Ciri khas suatu node dalam linked list adalah harus selalu terdapat field, paling sedikit dua
bagian, yaitu :
1. Data
2. Pointer
Linked list dapat disajikan dengan 2 bagian, yaitu Singly Linked List dan Doubly
Linked List. Baik singly linked list maupun doubly linked list dapat juga disajikan secara
Melingkar (circular).
Keuntungan & Kerugian Dari
Linked List
Keuntungan dari Linked List :
 Jenis data yang berbeda dapat di-link.
 Operasi REMOVE atau INSERT hanya dilakukan dengan mengubah pointer-nya saja.
Kerugian dari Linked List :
 Dibutuhkan ruang tambahan untuk menyatakan/tempat field pointer.
 Diperlukan waktu yang lebih banyak untuk mencari suatu node dalam linked list.
Single Linked List
Single linked list merupakan linked list yang paling sederhana. Setiap simpul dibagi
menjadi dua bagian yaitu bagian isi dan bagian pointer. Bagian isi merupakan bagian yang
berisi data yang disimpan oleh simpul, sedangkan bagian pointer merupakan bagian yang
berisi alamat dari simpul berikutya.
Sebagai ilustrasi simpul dari singly list dapat dilihat pada gambar berikut :
Pembagian Single Linked List
Single linked list dibagi menjadi 2, yaitu :
1. Single linked list circular
Single Linked List Circular adalah Single Linked List yang pointer next-nya menunjuk pada
dirinya sendiri. Jika Single Linked List tersebut terdiri dari beberapa node, maka pointer next pada
node terakhir akan menunjuk ke node terdepannya.
Contoh single list circular :
2. Single Linked List Non-Circular
Single Linked List Non-Circular adalah Singly Linked List yang pointer next pada node
terakhir-nya menunjuk ke Null.
Contoh single list non-circular :
Operasi Pada Single Linked List
Operasi pada single linked list ada 3, yaitu :
• Menambah Simpul
Operasi yang digunakan untuk menyisipkan simpul di posisi tertentu. Peyisipan simpul dapat
dilakukan di posisi depan, penyisipan simpul di belakang penyisipan simpul di antara dua simpul
(tengah).
• Menghapus Simpul
Operasi yang digunakan unruk menghapus suatu simpul dari suatu linked list. Dalam
melakukan penghaspusan simpul, ada yang perlu di perhatikan, bahwa linked list tidak boleh
terputus. Sama hal nya dengan penyisipan, penghapusan simpul juga dapat dilakukan terhadap
simpul depan, simpul belakang, dan simpul tengah.
• Mencetak Isi Simpul
Nilai masing-masing simpul dapat dicetak mulai dari isi simpul pertama atau simpul depan
hingga simpul belakang
Double Linked List
Double linked list merupakan linked list dimana setiap simpul dibagi menjadi tiga bagian
yaitu bagian isi, bagian pointer kiri, dan bagian pointer kanan. Bagian isi merupakan bagian yang
berisi data yang disimpan oleh simpul, sedangkan bagian pointer kiri merupakan bagian yang
berisi alamat dari simpul sebelumnya dan bagian pointer kanan merupakan bagian yang berisi
alamat dari simpul berikutnya.
Pembagian Double Linked List
Double linked list dibagi menjadi 2, yaitu :
1. Double Linked List Circular
Double Linked List Circular adalah linked list dengan menggunakan pointer, dimana setiap
node memiliki 3 field, yaitu 1 field pointer yang menunjuk pointer berikutnya (next), 1 field
menunjuk pointer sebelumnya (prev), serta sebuah field yang berisi data untuk node tersebut.
Double Linked List Circular pointer next dan prev-nya menunjuk ke dirinya sendiri secara
circular.
Contoh double list circular :
2. Double Linked List Non-Circular
Double Linked List Non Circular adalah linked list dengan menggunakan pointer, dimana
setiap node memiliki 3 field, yaitu 1 field pointer yang menunjuk pointer berikutnya (next), 1 field
menunjuk pointer sebelumnya (prev), serta sebuah field yang berisi data untuk node tersebut.
Double Linked List Non Circular pointer next dan prev nya menunjuk ke NULL. Dengan adanya
2 pointer penunjuk, next dan prev, DLLNC sangat flexible dibandingkan dengan SLLNC.
Contoh double list non-circular :
Operasi Pada Double Linked List
Operasi pada double linked list ada 4, yaitu :
• Penyisipan Simpul
Operasi penyisipan suatu simpul baru ke dalam suatu double linked list. Penyisipan dapat
dilakukan di posisi depan, tengah, dan belakang.
• Penghapusan Simpul
Operasi menghapus suatu simpul dari suatu linked list pada double linked list hampir sama
dengan penghapusan simpul single linked list, linked list (DL) tidak boleh dalam keadaan kosong.
Penghapusan simpul juga dapat dilakukan terhadap simpul depan, simpul belakang, dan simpul
tengah.
• Percetakan Simpul
• Mencetak Linked List Secara Mundur
Mencetak mundur artinya mencetak elemen linked ist mulai dari elemen simpul belakang ke
depan.
Linked List

Linked List

  • 1.
    LINKED LIST ..Struktur Data..A1 Kelompok 3 Ketua : Anggota : 1. 2. 3. 4.
  • 2.
    Pengertian Linked List Linkedlist (one way list) adalah suatu kumpulan elemen data (yang disebut sebagai node) dimana urutannya ditentukan oleh suatu pointer. Setiap elemen (node) dari suatu linked list terdiri atas dua bagian, yaitu : a) INFO , berisi informasi tentang elemen data yang bersangkutan. b) NEXT (link field/next pointer field), berisi alamat dari elemen (node) selanjutnya yang dituju. Berikut ini sebuah contoh linked list yang terdiri atas 4 node : Pada node ke-4 field NEXT-nya berisi NULL, artinya node ke-4 tersebut adalah node terakhir.
  • 3.
    Ciri khas suatunode dalam linked list adalah harus selalu terdapat field, paling sedikit dua bagian, yaitu : 1. Data 2. Pointer Linked list dapat disajikan dengan 2 bagian, yaitu Singly Linked List dan Doubly Linked List. Baik singly linked list maupun doubly linked list dapat juga disajikan secara Melingkar (circular).
  • 4.
    Keuntungan & KerugianDari Linked List Keuntungan dari Linked List :  Jenis data yang berbeda dapat di-link.  Operasi REMOVE atau INSERT hanya dilakukan dengan mengubah pointer-nya saja. Kerugian dari Linked List :  Dibutuhkan ruang tambahan untuk menyatakan/tempat field pointer.  Diperlukan waktu yang lebih banyak untuk mencari suatu node dalam linked list.
  • 5.
    Single Linked List Singlelinked list merupakan linked list yang paling sederhana. Setiap simpul dibagi menjadi dua bagian yaitu bagian isi dan bagian pointer. Bagian isi merupakan bagian yang berisi data yang disimpan oleh simpul, sedangkan bagian pointer merupakan bagian yang berisi alamat dari simpul berikutya. Sebagai ilustrasi simpul dari singly list dapat dilihat pada gambar berikut :
  • 6.
    Pembagian Single LinkedList Single linked list dibagi menjadi 2, yaitu : 1. Single linked list circular Single Linked List Circular adalah Single Linked List yang pointer next-nya menunjuk pada dirinya sendiri. Jika Single Linked List tersebut terdiri dari beberapa node, maka pointer next pada node terakhir akan menunjuk ke node terdepannya. Contoh single list circular :
  • 7.
    2. Single LinkedList Non-Circular Single Linked List Non-Circular adalah Singly Linked List yang pointer next pada node terakhir-nya menunjuk ke Null. Contoh single list non-circular :
  • 8.
    Operasi Pada SingleLinked List Operasi pada single linked list ada 3, yaitu : • Menambah Simpul Operasi yang digunakan untuk menyisipkan simpul di posisi tertentu. Peyisipan simpul dapat dilakukan di posisi depan, penyisipan simpul di belakang penyisipan simpul di antara dua simpul (tengah). • Menghapus Simpul Operasi yang digunakan unruk menghapus suatu simpul dari suatu linked list. Dalam melakukan penghaspusan simpul, ada yang perlu di perhatikan, bahwa linked list tidak boleh terputus. Sama hal nya dengan penyisipan, penghapusan simpul juga dapat dilakukan terhadap simpul depan, simpul belakang, dan simpul tengah. • Mencetak Isi Simpul Nilai masing-masing simpul dapat dicetak mulai dari isi simpul pertama atau simpul depan hingga simpul belakang
  • 9.
    Double Linked List Doublelinked list merupakan linked list dimana setiap simpul dibagi menjadi tiga bagian yaitu bagian isi, bagian pointer kiri, dan bagian pointer kanan. Bagian isi merupakan bagian yang berisi data yang disimpan oleh simpul, sedangkan bagian pointer kiri merupakan bagian yang berisi alamat dari simpul sebelumnya dan bagian pointer kanan merupakan bagian yang berisi alamat dari simpul berikutnya.
  • 10.
    Pembagian Double LinkedList Double linked list dibagi menjadi 2, yaitu : 1. Double Linked List Circular Double Linked List Circular adalah linked list dengan menggunakan pointer, dimana setiap node memiliki 3 field, yaitu 1 field pointer yang menunjuk pointer berikutnya (next), 1 field menunjuk pointer sebelumnya (prev), serta sebuah field yang berisi data untuk node tersebut. Double Linked List Circular pointer next dan prev-nya menunjuk ke dirinya sendiri secara circular. Contoh double list circular :
  • 11.
    2. Double LinkedList Non-Circular Double Linked List Non Circular adalah linked list dengan menggunakan pointer, dimana setiap node memiliki 3 field, yaitu 1 field pointer yang menunjuk pointer berikutnya (next), 1 field menunjuk pointer sebelumnya (prev), serta sebuah field yang berisi data untuk node tersebut. Double Linked List Non Circular pointer next dan prev nya menunjuk ke NULL. Dengan adanya 2 pointer penunjuk, next dan prev, DLLNC sangat flexible dibandingkan dengan SLLNC. Contoh double list non-circular :
  • 12.
    Operasi Pada DoubleLinked List Operasi pada double linked list ada 4, yaitu : • Penyisipan Simpul Operasi penyisipan suatu simpul baru ke dalam suatu double linked list. Penyisipan dapat dilakukan di posisi depan, tengah, dan belakang. • Penghapusan Simpul Operasi menghapus suatu simpul dari suatu linked list pada double linked list hampir sama dengan penghapusan simpul single linked list, linked list (DL) tidak boleh dalam keadaan kosong. Penghapusan simpul juga dapat dilakukan terhadap simpul depan, simpul belakang, dan simpul tengah. • Percetakan Simpul • Mencetak Linked List Secara Mundur Mencetak mundur artinya mencetak elemen linked ist mulai dari elemen simpul belakang ke depan.