Rabu, 08 Juni 2011

Catatan Perut dan Catatan Kaki - Bryan 08110110015

Linked List
Bagaimana seorang programmer dapat mengatasi masalah pengalokasian array yang terlalu besar? Solusi untuk menjawab pertanyaan tersebut dengan dapat dijawab dengan menggunakan sistem linked list.
Pada array, apabila programmer ingin menyimpan data, programmer diharuskan untuk mendefinisikan besar array terlebih dahulu, seringkali programmer mengalokasikan array yang sangat besar. Hal ini tidak efektif karena seringkali yang dipakai tidak sebesar itu dan apabila programmer ingin menyimpan data lebih dari seratus data, maka hal itu tidak dapat dimungkinkan karena sifat array yang besarnya statik. Linked list adalah salah satu struktur data yang mampu menutupi kelemahan tersebut.[1]
Menurut wikipedia “Senarai berantai (Bahasa Inggris: linked list) adalah salah satu struktur data dasar yang sangat fundamental dalam bidang ilmu komputer. Dengan menggunakan linked list maka programmer dapat menimpan datanya kapanpun dibutuhkan. Linked list mirip dangan larik (array), kecuali pada linked list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat pengoperasian program (run-time)”[2]
Dalam sumber lain pengertian linked list diartikan sebagai suatu struktur data yang terdiri atas node (simpul) yang dikaitkan secara linier dengan bantuan pointer.[3] Disebut linear karena satu simpul dikaitkan dengan simpul lainnya. Simpul tersebut menempati memori yang dialokasikan secara dinamis. Simpul berbentuk struct, satu atau beberapa field bertipe pointer berfungsi sebagai kait ke simpul lain.
Secara umum linked list terbagi menjadi 2 tipe, yaitu singly-linked list dan doubly-linked list. Doubly-linked list hampir sama dengan singly-linked list hanya saja pada doubly-linked list terdapat sebuah pointer prev yang bisa digunakan untuk mundur.[4] Jadi nantinya kita dapat menggunakan doubly-linked list untuk mengakses data secara maju dan mundur. Singly-linked list adalah senarai berkait yang setiap simpul pembentuknya mempunyai satu kait (link) ke simpul lainnya.[5] Pembentukan singly-linked list memerlukan 4 hal yaitu deklarasi tipe simpul, deklarasi variabel pointer penunjuk awal, pembentukan simpul baru, dan pengaitan simpul baru ke linked list yang terbentuk.



Daftar Pustaka

Ngoen,Thompson Subsada. 2008. Pengantar Algoritma dengan Bahasa C. Jakarta : Salemba Teknika.
Universitas Kristen Duta Wacana. 2008. “Double Linked List”. Dalam http://lecturer.ukdw.ac.id/yuan/wpcontent/uploads/2008/11/doublelinkedlist.pdf.
Wikipedia. 2011. “Linked List”. Dalam http://id.wikipedia.org/wiki/Linked_list.























Linked List
Bagaimana seorang programmer dapat mengatasi masalah pengalokasian array yang terlalu besar? Solusi untuk menjawab pertanyaan tersebut dengan dapat dijawab dengan menggunakan sistem linked list.
Pada array, apabila programmer ingin menyimpan data, programmer diharuskan untuk mendefinisikan besar array terlebih dahulu, seringkali programmer mengalokasikan array yang sangat besar. Hal ini tidak efektif karena seringkali yang dipakai tidak sebesar itu dan apabila programmer ingin menyimpan data lebih dari seratus data, maka hal itu tidak dapat dimungkinkan karena sifat array yang besarnya statik. Dalam http://id.wikipedia.org/wiki/Linked_list, Linked list adalah salah satu struktur data yang mampu menutupi kelemahan tersebut.
Menurut Wikipedia,
Senarai berantai (Bahasa Inggris: linked list) adalah salah satu struktur data dasar yang sangat fundamental dalam bidang ilmu komputer. Dengan menggunakan linked list maka programmer dapat menimpan datanya kapanpun dibutuhkan. Linked list mirip dangan larik (array), kecuali pada linked list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat pengoperasian program (run-time).
Dalam sumber lain, menurut Thompson Subsabda Ngoen (2008: 164), pengertian linked list diartikan sebagai suatu struktur data yang terdiri atas node (simpul) yang dikaitkan secara linier dengan bantuan pointer. Disebut linear karena satu simpul dikaitkan dengan simpul lainnya. Simpul tersebut menempati memori yang dialokasikan secara dinamis. Simpul berbentuk struct, satu atau beberapa field bertipe pointer berfungsi sebagai kait ke simpul lain.
Secara umum linked list terbagi menjadi 2 tipe, yaitu singly-linked list dan doubly-linked list. Dalam http://lecturer.ukdw.ac.id/yuan/wpcontent/uploads/2008/11/doublelinkedlist.pdf., Doubly-linked list merupakan linked list yang mempunyai sitem pointer prev yang bisa digunakan untuk mundur. Jadi nantinya kita dapat menggunakan doubly-linked list untuk mengakses data secara maju dan mundur. Menurut Thompson Subsabda Ngoen (2008: 165), Singly-linked list adalah senarai berkait yang setiap simpul pembentuknya mempunyai satu kait (link) ke simpul lainnya. Pembentukan singly-linked list memerlukan 4 hal yaitu deklarasi tipe simpul, deklarasi variabel pointer penunjuk awal, pembentukan simpul baru, dan pengaitan simpul baru ke linked list yang terbentuk.







[1]  Dalam http://id.wikipedia.org/wiki/Linked_list.
[2]  Ibid
[3]  Ngoen, Thompson Susabda, Pengantar Algoritma dengan Bahasa C  (Jakarta :  Salemba Teknika,2008), hlm. 164.
[4]  Dalam http://lecturer.ukdw.ac.id/yuan/wp-content/uploads/2008/11/doublelinkedlist.pdf.
[5]  Ngoen, Thompson Susabda,  op. cit, hlm. 165.

Tidak ada komentar:

Posting Komentar