Pada kondisi ini proses penghapusan tidak bisa dilakukan Kondisi linked list memiliki hanya 1 data{satu simpul} Akhir. Akhir

dokumen-dokumen yang mirip
BAB IX LINKED LIST (SENARAI BERANTAI)

Gambar 3.1. Circular Single Linked List. Deklarasi bisa dilihat kembali di Single Linked List atau Double Linked List.

Jadi satu simpul di double linked list adalah sebagai berikut : Info. Kiri. Kanan

BAB IX LINKED LIST (SENARAI BERANTAI)

PENGENALAN List merupakan sebuah pemikiran/konsep struktur data yang sangat dasar pada pemrograman agar lebih fleksibel. Setiap elemen akan ditambahka

LIST. Dewi Sartika, M.Kom

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

Linked List. Bandung 2013

Single Linked List (1)

KONSEP POINTER DAN LINKED LIST

ARRAY STATIS. Type namatype_array = array [1..maks_array] of tipedata. nama_var_array : namatype_array {indeks array dari 1 sampai maksimum array}

QUEUE (ANTRIAN) Struktur Data - Queue

SINGLE LINKED LIST (NON CIRCULAR)

ALGORITMA & PEMROGRAMAN

KONSEP POINTER DAN LINKED LIST

List akan disimpan dalam bagian memori komputer yang dinamakan HEAP

Pertemuan 3. Perubah Dinamis (Dinamic variable) Suatu perubah yang akan dialokasikan hanya pada saat diperlukan, yaitu setelah program dieksekusi.

A. TUJUAN PEMBELAJARAN

STRUKTUR DATA (2) Single Linked List

Lab. Teknik Informatika Struktur Data 1

Modul Praktikum Algoritma dan Struktur Data

Variasi List Linier. Nisa ul Hafidhoh, MT

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

List Berkait(Linked List) Overview. Tujuan Instruksional

Double linked list. Gambar 1. Double linket list dengan empat simpul Deklarasi Double Linked List di dalam Pascal :

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

KONSEP POINTER DAN LINKED LIST

Algoritma Pemrograman & Struktur Data

Pengenalan Struktur Data dan Algoritma

ARRAY DINAMIS. Type. Pengenal = Simpul Simpul = Type. (Nama var) : ( Type data)

ALGORITMA DAN STRUKTUR DATA

Data structure :Metode LINK LIST. Kusnawi, S.Kom, M.Eng STMIK AMIKOM Yogyakarta

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

LIST BERKAIT(LINKED LIST)

03 LINKED LIST. Slide 0 voice. Slide 1 voice. Slide 2 voice. Thompson Susabda Ngoen 1 P a g e

Array VS Linked List

Menghapus Pointer Statement yang digunakan untuk menghapus pointer adalah Dispose, yang mempunyai bentuk umum : Dispose(peubah) ;

BAB 3 SEARCHING A. TUJUAN

LOGO STRUKTUR DATA QUEUE

MODUL 6 SINGLE & DOUBLE LINKED LIST

Algoritma Pemrograman & Struktur Data

Buku Ajar Struktur Data

MAKALAH STRUKTUR DATA. DOSEN PEMBIMBING Nisa miftachurohmah, S.kom., M.Si PENYUSUN SITI JAMILATUL MU ADDIBAH ( )

STRUKTUR DATA. Literatur

3. DOUBLE LINK LIST. Lab. Teknik Informatika Struktur Data 1

RESUME A B C D. Gambar 1 Double Linked list dengan Empat Simpul

QUEUE (ANTREAN) Operasi Antrean : FIFO (First In First Out) Elemen yang pertama masuk merupakan elemen yang pertama keluar.

Modul Praktikum Algoritma dan Struktur Data

Buku Ajar Struktur Data

Review : Sifat Implementasi Linear List dengan Array

Algoritma dan Struktur Data

Algoritma dan Struktur Data. Pertemuan 7 Linked List

Tugas Studi Kasus. Linked List SLLNC dengan Head & Tail

Struktur Data II. Single Linked List - Non circular

Struktur Data. Tumpukan : Definisi & Operasi. Pertemuan 4 PROBLEM ALGORITHM DATA IMPLEMENTATION. Pert. 4b Struktur Data - FMIPA USD

Modul 8 SORTING (PENGURUTAN)

Algoritma dan Struktur Data. Ramos Somya, S.Kom., M.Cs.

A B C D E F. Gambar 1. Senarai berantai dengan 6 simpul

Struktur Data. PDE - Struktur Data 1

Langkah Mudah Belajar Struktur Data Menggunakan C/C++

SINGLE LINKED LIST NON CIRCULAR (SENARAI BERANTAI TUNGGAL TIDAK BERPUTAR)

BAB VIII Pencarian(Searching)

Metode Alokasi Berkas

Masukan Judul... Infotype àsebuah tipe terdefinisi yang menyimpan informasi sebuah elemen list

1. E = a + 2b d + dh f g. Ubah ke dalam notasi postfix: a. Menggunakan Algoritma b. Secara manual c. Dari pohon biner menggunakan Stack

LAPORAN PRAKTIKUM IX. Oleh:

Double Linked List. Brigida Arie Minartiningtyas, M.Kom

//membuat sebuah tipe data baru yang terdiri dari. //field data bertipe integer //field next merupakan pointer dari list

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS

Penerapan BFS dan DFS dalam Garbage Collection

DIG1G3 Implementasi Struktur Data

Senarai berantai. linked list. Pertemuan keenam Struktur data st3telkom.ac.id. by : tenia wahyuningrum & Sisilia Thya Safitri

TIM ASISTEN PRAKTIKUM ALGORITMA DAN PEMROGRAMAN 2017

STRUKTUR DATA single linked list non circular

STACK (TUMPUKAN) Tumpukan uang koin Tumpukan kotak Tumpukan Buku. Gambar 1. Macam-macam tumpukan

Ujian Tengah Semester Struktur Data dan Algoritma Fakultas Ilmu Komputer, Universitas Indonesia 9 November 2006

A. TUJUAN PEMBELAJARAN

Algoritma dan Struktur Data. Ramos Somya

BAB 5 LINKED LIST. LINKED LIST ATAU ONE-WAY LIST Adalah koleksi linier dari elemen data yang disebut Simpul atau Node.

KERUGIAN DAN KEUNTUNGAN LINKED LIST

IKG2A3/ Pemrograman Terstruktur 2

1. Traversing Untuk algoritma traversing sama seperti pada single Link List

ALGORITMA PEMROGRAMAN 1A** (PP :S1-KA) Pertemuan 7. Ahmad Hidayat

SENARAI BERANTAI (LINK LIST)

Algoritma dan Struktur Data. Linked List

: Mahasiswa mampu menjelaskan teknik pemrograman menggunakan Linked List. Single Linked List

4 LINKED LIST. 4.1 Istilah-istilah 1. Simpul Simpul terdiri dari dua bagian, yaitu : Bagian data Bagian pointer yang menunjuk ke simpul berikutnya.

SEARCHING & SORTING. Pendahuluan

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

Algoritma dan Struktur Data. Pertemuan 9 Circular Linked List

Bab 4 Pointer dan Struktur Data Dinamik 16 BAB IV POINTER DAN STRUKTUR DATA DINAMIK TUJUAN PRAKTIKUM TEORI PENUNJANG

PENCARIAN KITAB BESERTA PASAL PADA ALKITAB BERDASARKAN KATA DENGAN MENGGUNAKAN STRUKTUR DATA TRIE

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktivitas Pembelajaran

List Linier (Bag. I) IF2121/Algoritma dan Struktur Data Sem. I 2016/ /25/2017 IF2121/Sem I 2017/2018 1

BAB VI SORTIR ATAU PENGURUTAN

POINTER PADA PASCAL. <nama_var> : ^<tipe_data>; <nama_var> : pointer;

BAB I PENDAHULUAN.

BAB II Senarai Berantai (Linked List)

MODUL 4 ARRAY ARRAY PEMROGRAMAN WEB TEKNIK INFORMATIKA UNIVERSITAS PASUNDAN BANDUNG 2016/2017

Transkripsi:

3. Penghapusan a. Penghapusan di awal/depan Penghapusan data di awal adalah proses menghapus simpul pertama (yang ditunjuk oleh variabel pointer ), sehingga variabel pointer akan berpindah ke simpul berikutnya. Ada 3 kondisi yang perlu diperhatikan yaitu kondisi linked list masih kosong, kondisi linked list hanya memiliki 1 data, dan kondisi linked list yang memiliki data lebih dari 1 elemen Kondisi linked list kosong Pada kondisi ini proses penghapusan tidak bisa dilakukan Kondisi linked list memiliki hanya 1 data{satu simpul} A Berikan satu variabel pointer yang menunjuk ke simpul yang ditunjuk oleh /. A Kemudian berikan nilai nil untuk variabel pointer dan variabel pointer. Simpan terlebih dahulu nilai dari simpul yang akan dihapus ke dalam sebuah variabel elemen. A elemen A Setelah itu simpul yang ditunjuk oleh variable pointer dapat dihapus.

Kondisi linked list memiliki data lebih dari 1 data 9 1 Tempatkan variabel pointer an yang bernama ke simpul yang sudah ditunjuk oleh variable pointer (simpul pertama). 9 1 Setelah itu pindahkan variabel pointer ke simpul berikutnya. 9 1 elemen Setelah itu simpan data yang ada pada simpul yang akan dihapus ke dalam sebuah variabel. Lalu hapus/hancurkan simpul yang ditunjuk oleh variabel pointer. Sehingga linked list menjadi seperti di bawah ini: 9 1 b. Penghapusan di tengah Misalnya akan menghapus simpul ke-3. 7 9 1 Kemudian cari posisi simpul sebelum posisi simpul yang akan dihapus, yang dilakukan oleh variabel pointer bernama. 7 9 1

Kemudian field next dari simpul yang ditunjuk oleh pointer harus menunjuk ke alamat yang ditunjuk oleh field next dari simpul yang ditunjuk oleh pointer. 7 9 1 Simpan data yang ada pada simpul yang akan dihapus ke dalam sebuah variabel elemen, lalu hapus simpul yang ditunjuk oleh variabel pointer. 7 9 1 Setelah langkah tersebut, maka linked list seperti gambar di bawah ini: 7 1 c. Penghapusan di belakang/akhir Kondisi linked list memiliki lebih dari 1 data. 9 1 Karena posisi simpul yang akan dihapus adalah simpul terakhir, maka nanti posisi pointer akhir harus pindah ke posisi simpul sebelumnya. Oleh karena itu harus dicari posisi simpul sebelum simpul terakhir, sebut dengan variabel pointer. 9 1

Kemudian pindahkan variabel pointer akhir ke simpul yang ditunjuk oleh varibel pointer. 9 1 Variabel pointer pindahkan ke simpul tetangganya. 9 1 elemen Simpul yang ditunjuk oleh variabel pointer akhir field next-nya diberi harga nil. Sebelum simpul yang ditunjuk oleh variabel pointer dihapus, maka simpan terlebih dahulu nilainya pada sebuah variabel elemen. Kemudian lakukan penghapusan pada simpul yang ditunjuk variabel pointer, sehingga hasil akhirnya seperti dibawah ini: 9 1 4. Penelusuran Single Linked List Penelusuran berarti menampilkan semua data yang ada di dalam linked list dari simpul pertamal sampai dengan simpul yang terakhir. Untuk itu diperlukan suatu variabel pointer pem (sebut saja variable pointer ) yang akan menelusuri simpul sampai simpul terakhir. Langkah-langkah penelusuran adalah : Salin variabel pointer awal ke variabel pointer. Selama variabel pointer tidak NULL/nil, maka tampilkan field info yang ada di simpul yang ditunjuk variabel pointer, kemudian variabel pointer dipindahkan ke simpul berikutnya. Pencarian Langkah-langkah untuk melakuan pencarian data dalam linked list tidak begitu beda dengan langkah-langkah pencarian data pada array statis. Karena dengan linked list

tidak dapat diakses secara acak, maka pencarian yang dilakukan adalah pencarian secara sekuensial. Contoh : Data yang akan dicari = 9 9 1 Berarti diperlukan variabel pointer an () untuk menelusuri simpul pertama sampai dengan simpul terakhir untuk mendapatkan data yang dicari. 9 1 Setelah simpul ditelusuri data 9 akan ditemukan pada simpul yang ke 2. 6. Pengurutan Langkah pengurutan data dalam linked list sama saja dengan pengurutan data dalam array. Berikut ini adalah implementasi pengurutan data dalam linked list dengan algoritma bubble sort. Contoh : Pengurutan menggunakan buble sort secara ascending 12 9 2 Berikan variabel pointer yang menunjuk ke simpul awal dan variabel pointer ditempatkan di tetangga dari simpul yang ditunjuk oleh variabel. Penyusunan data acak menjadi data tersusun untuk data di atas akan mengalami 3 tahap, karena jumlah data berjumlah 4 data. Tahap I : 12 9 2 9 12 2

2 12 9 2 12 9 II : 2 12 9 2 9 12 2 12 9 III : 2 12 9 2 9 12 Jadi data terurut secara ascending sebagai berikut: 2 9 12

7. Penghancuran Penghancuran berarti membebaskan memori dan mengembalikannya ke sistem operasi untuk dikelola. Langkah-langkahnya: 1. Tempatkan variabel pointer an () di simpul pertama 2. Pindahkan variabel pointer awal ke simpul tetangga kanannya. 3. Hapus simpul yang ditunjuk oleh variabel pointer 4. Tempatkan kembali variabel pointer ke simpul yang ditunjuk oleh variabel pointer awal. Lakukan langkah 2 4 berulang-ulang sampai list kosong.