jurnal linked list

Upload: irsyadul-ibad

Post on 11-Feb-2018

419 views

Category:

Documents


27 download

TRANSCRIPT

  • 7/23/2019 Jurnal Linked List

    1/11

    Jurnal linked list 1

    KATA PENGANTAR

    Puji syukur kami panjatkan kehadirat Allah SWT yang telah memberikan rahmat serta karunia-Nya

    kepada kami sehingga kami berhasil menyelesaikan jurnal ini yang alhamdulillah tepat padawaktunya.shalawat dan salam tercurah kepada nabi besar nabi muhammad SAW dan

    keluarganya.

    Jurnal dengan judul linked list ini kami susun untuk memenuhi tugas Mata kuliah

    struktur data pada semester genap.

    Kami menyadari bahwa makalah ini masih jauh dari sempurna, oleh karena itu kritik dansaran dari

    semua pihak yang bersifat membangun selalu kami harapkan demi kesempurnaanmakalah ini.Akhir kata,

    kami sampaikan terima kasih kepada semua pihak yang telah berperan sertadalam penyusunan makalah ini

    dari awal sampai akhir. Semoga Allah SWT senantiasa meridhai segala usaha kita. Amin

    Pekanbaru,28 mei 2013

    Penulis

  • 7/23/2019 Jurnal Linked List

    2/11

    Jurnal linked list 2

    DAFTAR ISI

    KATA PENGANTAR................................................................................................ ......i

    DAFTAR ISI .....................................................................................................................ii

    ABSTRAK.........................................................................................................................1

    BAB I PENDAHULUAN .................................................................................................2

    1.1. Latar Belakang Masalah ..................................................................................... 2

    1.2. Rumusan Masalah

    1.3. tujuan....................................................................................................................2

    BAB II PEMBAHASAN ..................................................................................................3

    2.1. Pengertian............................................................................................................ 3

    2.2. Jenis linked list.....................................................................................................3

    2.2.1. single linked list............................................................................................4

    2.2.2 Double Linked List........................................................................................5

    BAB III PENUTUP...........................................................................................................8

    3.1.kesimpulan.............................................................................................................8

    3.2. kritik dan saran ....................................................................................................8

    BAB IV DAFTAR PUSTAKA ........................................................................................9

  • 7/23/2019 Jurnal Linked List

    3/11

    Jurnal linked list 3

    ABSTRAK

    Linked list Dikembangkan tahun 1955-1956 oleh Allen Newell, Cliff Shaw dan

    Herbert Simon di RAND Corporation sebagai struktur data utama untuk bahasa Information

    Processing Language (IPL). IPL dibuat untuk mengembangkan program artificial intelligence

    Linked List adalah salah satu bentuk struktur data, berisi kumpulan data (node) yang

    tersusun secara sekuensial, saling sambung-menyambung dan dinamis.

    Berikut adalah beberapa bagian Linked List :

    1.Single Linked List

    2.double Linked List

    Ada dua jenis operasi pada linked list, yaitu :

    1. buat baru

    2. tambah

    a.Menambah di belakang

    b.Menambah di depan

    c.Menambah di tengah

    3.hapus

    a.Menghapus simpul pertama

    b.Menghapus simpul di tengah

    c.Menghapus simpul di akhir

    4. cetak/baca

    a.Membaca maju

    b.Membaca mundur

  • 7/23/2019 Jurnal Linked List

    4/11

    Jurnal linked list 4

    BAB I

    PENDAHULUAN

    1.1Latar Belakang

    Dalam pemakaian sehari-hari istilah senarai berantai (linked list) adalah kumpulan

    linear sejumlah data.Linked list (senarai terkait) 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 array,

    kecuali pada linked list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat

    pengoperasian program (run-time).

    1.2Rumusan masalah1. Apa pengertian dari linked list,?2. Apa jenis-jenis dari linked list,?3. Apa saja operasi-operasi pada linked list,?

    1.3 Tujuan

    1. Mengetahui pengertian linked list.2. Mengetahui macam-macam dari linked list.3. Mengetahui operasi-operasi pada linked list

  • 7/23/2019 Jurnal Linked List

    5/11

    Jurnal linked list 5

    BAB 1I

    PEMBAHASAN

    2.1Pengertian

    Salah satu bentuk struktur data yang berisi kumpulan data yang tersusun secara

    sekuensial, saling bersambungan, dinamis, dan terbatas adalah senarai berkait (linked list).

    Suatu senarai berkait (linked list) adalah suatu simpul (node) yang dikaitkan dengan simpul

    yang lain dalam suatu urutan tertentu. Suatu simpull dapat berbentuk suatu struktur atau

    class. Simpul harus mempunyai satu atau lebih elemen struktur atau class yang berisi data.

    Senarai berkait (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 array, kecuali pada linked

    list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat pengoperasian

    program (run-time).

    Didalam banyak aplikasi, ukuran dari data tidak diketahio saat kompile, hal ini bisa

    merupakan suatu atribut yang baik juga. Setiap node akan berbentuk struct dan memiliki satu

    buah field yang bertipe struct yang sama, yang berfungsi sebagai pointer. Dalam

    menghubungkan setiap node, kita dapat menggunakan cara first-create-first-access maupun

    first-create-last-access.

    Linked list saling terhubung dengan bantuan variabel pointer. Masing-masing data dalam

    linked list disebut dengan node (simpul) yang menempati alokasi memori secara dinamis dan

    biasanya berupa struct yang terdiri dari beberapa field.

    2.2Jenis linked list

    2.2.1 Single Linked List

    Single linked list atau biasa disebut linked list terdiri dari elemen-elemen individu,

    dimana masing-masing dihubungkan dengan pointer tunggal. Masing-masing elemen

    terdiri dari dua bagian, yaitu sebuah data dan sebuah pointer yang disebut dengan pointer

    next. Dengan menggunakan struktur two-member seperti ini, linked list dibentuk dengan

  • 7/23/2019 Jurnal Linked List

    6/11

    Jurnal linked list 6

    cara menunjuk pointer next suatu elemen ke elemen yang mengikutinya. Pointer next pada

    elemen terakhir merupakan NULL, yang menunjukkan akhir dari suatu list. Elemen pada

    awal suatu list disebut head, dan elemen terakhir dari suatu list disebut tail.

    2.2.2 Operasi pada Single Linked List2.2.2.1 Operasi Sisip

    a. Penyisipan didepanPenyisipan didepan pada single linked list adalah dengan cara

    menyisipkan data pada elemen awal list, sehingga pointer awal menunjuk list

    baru.

    b. Penyisipan ditengahPenyisipan ditengan pada single linked list adalah dengan cara

    menyisipkan data baru setelah elemen yang ditunjuk oleh variabel bantu pada

    list, kemudian pointer variabel baru menunjuk pointer variabel tertentu.

    c. Penyisipan dibelakangPenyisipan dibelakang pada single linked list adalah dengan cara

    menyisipkan data pada elemen akhir list, sehingga pointer akhir menunjuk list

    baru

    2.2.2.2.Operasi Hapus

    a. Hapus simpul awalUntuk menghapus simpul pertama, maka pointer Bantu kita buat sama

    dengan pointer Awal. Kemudian pointer Awal kita pindah ke simpul yang

    ditunjuk oleh pointer pada simpul yang ditunjuk oleh pointer Bantu kita

    dispose.

    b. Hapus simpul akhirUntuk menghapus simpul terakhir, tidak bisa dilakukan hanya dengan

    mendispose simpul akhir. Karena dengan disposenya simpul akhir, maka

    hanya simpul akhir saja yang dihapus, tetapi simpulnya masih tetap bisa

    dimasup, karena masih ditunjuk oleh pointer dari simpul di sebelah kirinya.

    Sehingga untuk bisa menghapus simpul terakhir, selain simpul akhir kita

    hapus, maka pointer dari sebelah kirinya juga harus dijadikan null.

  • 7/23/2019 Jurnal Linked List

    7/11

    Jurnal linked list 7

    c. Hapus simpul tengahUntuk menghapus simpul tengah, letakkan pointer Bantu pada simpul

    di sebelah kiri simpul yang akan dihapus. Simpul yang akan dihapus kita

    tunjuk dengan pointer lain, misalnya Hapus. Kemudian pointer pada simpul

    yang ditunjuk oleh Bantu kita tunjukkan pada simpul yang ditunjuk oleh

    pointer pada simpul yang akan dihapus. Selanjutnya simpul yang ditunjuk oleh

    pointer Hapus kita Dispose.

    2.2.3Double Linked List

    Elemen-elemen dihubungkan dengan dua pointer dalam satu elemen. Struktur ini

    menyebabkan list melintas baik ke depan maupun ke belakang. Masing-masing elemen pada

    double linked list terdiri dari tiga bagian, disamping data dan pointer next, masing-masing

    elemen dilengkapi dengan pointer prev yang menunjuk ke elemen sebelumnya. Double linked

    list dibentuk dengan menyusun sejumlah elemen sehingga pointer next menunjuk ke elemen

    yang mengikutinya dan pointer prev menunjuk ke elemen yang mendahuluinya. Untukmenunjukkan head dari double linked list, maka pointer prev dari elemen pertama menunjuk

    NULL. Untuk menunjukkan tail dari double linked list tersebut, maka pointer next dari

    elemen terakhir menunjuk NULL. Susunan elemen yang dihubungkan dalam bentuk double

    linked list. Untuk melintas kembali melalui double linked list, kita gunakan pointer prev dari

    elemen yang berurutan pada arah tail ke head. Double linked list mempunyai fleksibilitas

    yang lebih tinggi daripada single linked list dalam perpindahan pada list. Bentuk ini sangat

    berguna ketika akan meletakkan suatu elemen pada list dan dapat memilih dengan lebih

    bijaksana bagaimana memindahkannya. Sebagai contoh, salah satu fleksibilitas dari double

    linked list adalah dalam hal memindahkan elemen daripada menggunakan single linked list.

  • 7/23/2019 Jurnal Linked List

    8/11

    Jurnal linked list 8

    2.2.2.2Operasi pada Double Linked List

    3 Operasi Sisipa. Penyisipan didepan

    Operasi ini berguna untuk menambahkan satu simpul baru diposisi pertama.

    Langkah pertama untuk menambahkan data adalah pembuatan simpul baru

    dan mengisinya dengan data pada field infonya. Pointer yang menunjuk ke

    simpul tersebut dipanggil dengan nama baru.

    b. Penyisipan ditengahOperasi penyisipan data ditengah linked list adalah suatu operasi menambah

    data di posisi tertentu di dalam linked list. Karena double linked list memiliki

    dua pointer sambungan, maka penyisipan bisa dilakukan sebelum data tertentu

    atau sesudah data tertentu, berbeda dengan single linked list yang hanya

    memiliki satu pointer sambungan, yaitu sambungan next.

    c. Penyisipan dibelakangOperasi ini berguna untuk menambahkan elemen baru diposisi akhir. Langkah

    pertama untuk penambahan data adalah pembuatan elemen baru dan pengisiannilai infonya. Pointer yang menunjuk ke data tersebut dipanggil dengan nama

    baru.

    4 Operasi Hapusa. Hapus simpul awal

    Penghapusan data diawal adalah proses penghapusan simpul pertama (yang

    ditunjuk oleh variabel pointer awal), sehingga variabel pointer awal akan

    berpindah ke simpul berikutnya. Ada tiga kondisi yang perlu diperhatikan,

    yaitu kondisi linked list masih kosong, kondisi linked list hanya memiliki satu

    data, dan linked list yang memiliki data ebih dari satu elemen.

  • 7/23/2019 Jurnal Linked List

    9/11

    Jurnal linked list 9

    b. Hapus simpul akhirPenghapusan data diakhir adalah proses penghapusan pada simpul akhir (yang

    ditunjuk pointer akhir) dengan cara mengcopy pointer akhir dengan pointer

    hapus dan memindahkan pointer akhir ke tetangga kirinya dan datapun dapat

    dihapus.

    c. Hapus simpul tengahPenghapusan data ditengah merupakan proses penghapusan data dengan cara

    user memasukkan data/posisi data yang akan dihapus dan ditunjuk oleh

    pointer hapus. Untuk menghapus data tersebut dibutuhkan sebuah

    pointerbantu yang menunjuk data sebelum data yang akan dihapus. Dengan

    tujuan sebagai penyambung kembali data sebelum dan sesudah data yang akan

    dihapus.

  • 7/23/2019 Jurnal Linked List

    10/11

    Jurnal linked list 10

    BAB III

    PENUTUP

    4.2 KesimpulanDari jurnal di atas kami menarik kesimpulan bahwa :

    1. Linked list adalah sebuah struktur untuk menyimpan data yang bersifat dinamik2. Beberapa operasi dapat diterapkan pada linked list seperti sisip(insert),

    hapus(delete)

    3. Operasi-operasi yang ada pada linked list relatif lebih sulit jika dibandingkandengan operasi-operasi pada struktur yang statis

    3.2 Kritik dan Saran

    Apabila didalam penulis jurnal ini masih terdapat kekurangan dan kesalahan

    mohon dimaafkan, penulis sangat mengharapkan kritik dan sarannya dari dosen

    maupun teman-teman demi perbaikan jurnal ini dan kami ucapkan terima kasih.

  • 7/23/2019 Jurnal Linked List

    11/11

    Jurnal linked list 11

    DAFTAR PUSTAKA

    http//: jurnal-penyajian-senarai-berantai-linked-list/

    http//: strukturdatadoublelinkedlist/