Pengantar List Linier

dokumen-dokumen yang mirip
IKG2A3/ Pemrograman Terstruktur 2

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Queue (Antrian)

Pengantar Struktur Data

CCH1A4 / Dasar Algoritma & Pemrogramanan

Kode MK/ Pemrograman Terstruktur 2

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Stack (Tumpukan)

CCH1A4 / Dasar Algoritma & Pemrogramanan

IKG2A3/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Variasi List Linier

Representasi Logic List Linier

RENCANA PEMBELAJARAN SEMESTER (RPS)

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

Pengurutan pada Array. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

CCH1A4 / Dasar Algoritma & Pemrogramanan

BAB IX LINKED LIST (SENARAI BERANTAI)

BAB IX LINKED LIST (SENARAI BERANTAI)

IKG2A3/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Mesin Abstrak

CCH1A4 / Dasar Algoritma & Pemrogramanan

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

Pencarian pada Array. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

KKKF33110 STRUKTUR DATA

CCH1A4 / Dasar Algoritma & Pemrogramanan

CCH1A4 / Dasar Algoritma & Pemrogramanan

ANALISIS PERBANDINGAN METODE ALGORITMA QUICK SORT DAN MERGE SORT DALAM PENGURUTAN DATA TERHADAP JUMLAH LANGKAH DAN WAKTU

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

RENCANA PEMBELAJARAN SEMESTER (RPS)

Array (Tabel) bagian 2

Single Linked List (1)

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

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktivitas Pembelajaran

Menyelesaikan Topological Sort Menggunakan Directed Acyclic Graph

Kompleksitas Algoritma Pengurutan Selection Sort dan Insertion Sort

Pendahuluan Struktur Data. Nisa ul Hafidhoh

Algoritma dan Pemrograman Array/Tabel[3] Oleh: Eddy Prasetyo N

Array. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

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

ALGORITMA PENGURUTAN & PENCARIAN

CCH1A4 / Dasar Algoritma & Pemrogramanan

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

Kode MK/ Pemrograman Terstruktur 2

Pengenalan Algoritma & Struktur Data. Pertemuan ke-1

CCH1A4 / Dasar Algoritma & Pemrogramanan

A. TUJUAN PEMBELAJARAN

Algoritma Pemrograman & Struktur Data

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Tree (Pohon)

(3) BAHAN KAJIAN (materi ajar)

KOMPLEKSITAS ALGORITMA PENGURUTAN (SORTING ALGORITHM)

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

QUEUE Antrian 1. DEFINISI

Modul Praktikum Algoritma dan Struktur Data

1 Array dan Tipe Data Bentukan

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

Kompleksitas Algoritma Sorting yang Populer Dipakai

CCH1A4 / Dasar Algoritma & Pemrogramanan

SEQUENTIAL SEARCH 11/11/2010. Sequential Search (Tanpa Variabel Logika) untuk kondisi data tidak terurut

POINTER STACK DAN QUEUE. Institut Teknologi Sumatera

Pengenalan Struktur Data dan Algoritma

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

Algoritma Pemrograman & Struktur Data

ALGORITMA & PEMROGRAMAN

RENCANA PEMBELAJARAN SEMESTER (RPS)

Algoritma dan Struktur Data. Pertemuan 7 Linked List

Penerapan Teori Pohon Dalam Kajian Struktur Data

CCH1A4 / Dasar Algoritma & Pemrogramanan

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

Penerapan Teknik Binary Search Tree Sebagai Alternatif Penyimpanan Data

Single Linked List (2)

Pengurutan (Sorting) Keuntungan Data Terurut. Pengurutan Terbagi Dua Kelompok:

Review : Sifat Implementasi Linear List dengan Array

Kuliah ke : 4 Algoritma & Stuktur Data. Pengurutan (Sorting)

Algoritma dan Struktur Data

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

PENGURUTAN (SORTING) 1. Overview

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

BAB II Senarai Berantai (Linked List)

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

Abstract Data Type (ADT)

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

Gambar 13.1 Ilustrasi proses algoritma sorting

LIST LINIER 1. DEFINISI

BAB I PENDAHULUAN.

CCH1A4 / Dasar Algoritma & Pemrogramanan

RENCANA PEMBELAJARAN SEMESTER (RPS)

Pengertian Algoritma Pengurutan

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

Array dan Matriks. IF2121 / Algoritma dan Struktur Data Sem / /7/2017 IF2121/sem /2018 1

Algoritma Dan Struktur Data II

LAPORAN PRAKTIKUM RESMI QUEUE

IX. Implementasi ADT : Stacks & Queues. Operasi dasar Contoh kegunaan Implementasi Array-based dan linked list-based

Array ARRAY BERDIMENSI SATU. Representasi (Pemetaan) di memori. Lihat gambar dibawah ini, nilai data A (18) dismpan mulai dari alamat 1136 di memori.

Pertemuan - 3. Array dan Matriks (Bab 2) Oleh : Boldson Herdianto. S., Skom., MMSI.

Algoritma Dan Struktur Data II. Queue

UNIVERSITAS ISLAM INDONESIA FM-UII-AA-FKA-05/R4 SATUAN ACARA PERKULIAHAN

Algoritma dan Struktur Data. Pertemuan 9 Circular Linked List

Pengurutan (Sorting) Algoritma Pemrograman

TOPOLOGICAL SORT dengan DFS dan METODE LAIN

STACK (TUMPUKAN) Secara sederhana, sebuah tumpukan bisa kita ilustrasikan seperti gambar berikut.

ALGORITMA PEMOGRAMAN SEMESTER GENAP 2017/2018

Bubble Sort dan Shell-Sort. Yuliana Setiowati

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

BAB VIII Pencarian(Searching)

Transkripsi:

IKG2A3/ Pemrograman Terstruktur 2 ZK Abdurahman Baizal KK Algoritma dan Komputasi Pengantar List Linier 1 8/25/2015

Pendahuluan Pada bab ini akan dibahas ide dari penggunaan list berkait (linked list) List berkait sering digunakan dalam representasi struktur data Sebagai ide awal, akan dilihat kasus pengurutan data nilai mahasiswa 2 8/25/2015 IKG2A3 Pemrograman Terstruktur 2

Kasus : Pengurutan Tabel Diketahui sebuah tabel berukuran cukup besar, dengan tiap elemennya terdiri dari beberapa item data, kamus data sbb : Bagaimanakah cara untuk mendapatkan daftar dari nama mahasiswa berdasarkan nilaitot yang terurut descending? 3 8/25/2015

Cara 1 : Pengurutan Tabel Secara Fisik Mengurutkan tabel dengan salah satu teknik sorting (misal Maxsort/selection basis max), kemudian cetak tabel. 4 8/25/2015

5 8/25/2015

Perhatikan bahwa pada cara tersebut : Tabel terurut secara fisik Banyaknya proses pertukaran elemen membuat algoritma tidak efesien Pergeseran sebuah elemen akan meliputi banyak assignment jika elemen tabel terdiri dari banyak item, pada contoh diatas terdapat 7 item, dan 3 assignment, sehingga dalam satu kali pertukaran tempat akan terdapat 21 proses assignment 6 8/25/2015

Cara 2 : Pembuatan Tabel Ranking Untuk menghindari banyaknya assignment (pengurutan fisik), dibuat tabel lain (TabRank) yang hanya memuat ranking dari tabel TabRank (i) berisi indeks TabMhs yang rankingnya ke - i, selanjutnya pengurutan hanya dilakukan terhadap tabel ranking. Pencetakan dilakukan sesuai tabel ranking. Dengan cara ini, isi tabel tidak terurut secara fisik. 7 8/25/2015

Cara 2 : Pembuatan Tabel Ranking Contoh ilustrasi : Interpretasi TabRank : TabRank[1] = 5, artinya NilaiTot yang ke 5 rankingnya 1 TabRank[2] = 6, artinya NilaiTot yang ke 6 rankingnya 2 TabRank[3] = 2, artinya NilaiTot yang ke 2 rankingnya 3 TabRank[4] = 4, artinya NilaiTot yang ke 4 rankingnya 4 TabRank[5] = 1, artinya NilaiTot yang ke 1 rankingnya 5 TabRank[6] = 3, artinya NilaiTot yang ke 3 rankingnya 6 8 8/25/2015

Cara 2 : Pembuatan Tabel Ranking 9 8/25/2015

10 8/25/2015

Cara 2 : Pembuatan Tabel Ranking Perhatikan bahwa pada cara pembuatan tabel rangking : yang ditukar hanya harga ranking pada tabel TabRank, bukan setiap elemen tabel Mahasiswa TabMhs tetap, tidak berganti keadaan Cara ini banyak dilakukan dalam pengolahan data dalam basis data, dan dikenal sebagai indeks. Jika data disimpan dalam arsip. maka tabel ranking juga diimplementasikan dalam sebuah arsip, dan disebut sebagai Index File Perubahan atau penambahan data, tidak mengubah arsip, tetapi sebagai konsekuensinya arsip harus diindeks kembali, artinya membuat ranking yang baru 11 8/25/2015

Cara 3 : Pembuatan Tabel Keterurutan Pada cara ini digunakan TabNext untuk menelusuri keterurutan dalam TabMhs, untuk setiap i pada TabMhs. Tabnext(i) berisi indeks dari TabMhs yang berikut, artinya yang harganya lebih kecil dari TabMhs(i) Pencetakan elemen dilakukan terhadap TabNext 12 8/25/2015

Cara 3 : Pembuatan Tabel Keterurutan Contoh ilustrasi : Interpretasi TabNext : NilaiTot yang paling tinggi rankingnya (first) adalah NilaiTot [5] TabNext[5] = 6, artinya setelah NilaiTot[5], urutan berikutnya adalah NilaiTot[6] TabNext[6] = 2, artinya setelah NilaiTot[6], urutan berikutnya adalah NilaiTot[2], dst hingga Harga 0 digunakan sebagai tanda (mark) pada elemen terakhir 13 8/25/2015 TabNext[3] = 0, artinya setelah NilaiTot[3], urutan berikutnya tidak terdefinisi Setelah 3 tidak ada elemen yang berikutnya

14 8/25/2015

Tabel Keterurutan dibentuk dengan urutan proses sebagai berikut : 15 8/25/2015

Cara 3 : Pembuatan Tabel Keterurutan First adalah 1, karena nilai terbesar dari NilaiTot[1..1] adalah NilaiTot[1] NilaiTot[2] disisipkan setelah NilaiTot[1] First adalah 2, karena nilai terbesar dari NilaiTot[1..2] adalah NilaiTot[2] NilaiTot[3] disisipkan setelah NilaiTot[1] First adalah 2, karena nilai terbesar dari NilaiTot[1..3] adalah NilaiTot[2] NilaiTot[4] disisipkan setelah NilaiTot[2] First adalah 2, karena nilai terbesar dari NilaiTot[1..4] adalah NilaiTot[2] NilaiTot[5] disisipkan setelah NilaiTot[2] First adalah 5, karena nilai terbesar dari NilaiTot[1..5] adalah NilaiTot[5] NilaiTot[6] disisipkan setelah NilaiTot[5] First adalah 5, karena nilai terbesar dari NilaiTot[1..6] adalah NilaiTot[5] 16 8/25/2015

17 8/25/2015

Tabel keterurutan ini sering digunakan untuk representasi list berkait, karena lebih fleksibel, dan algoritma yang lebih efisien Tabel keterurutan yang dibahas dalam bab ini menggunakan tabel/array. Untuk selanjutnya akan kita bahas dengan representasi fisik pointer maupun tabel/array 18 8/25/2015

Kasus : Penambahan & Penghapusan Elemen Pada Tabel Terurut Pergeseran elemen juga muncul pada kasus penambahan dan penghapusan elemen pada suatu tabel yang telah terurut menurut suatu field tertentu (kecuali terhadap elemen yang terletak pada ujung tabel) 19 8/25/2015

Kasus : Penambahan & Penghapusan Elemen Pada Tabel Terurut Pada kasus penyisipan, pergeseran diperlukan untuk menyediakan ruang bagi elemen baru Pada kasus penghapusan, akan terjadi nilai elemen tabel yang tidak terdefinisi jika ruang yang dipakai oleh nilai yang dihapus tidak diisi oleh nilai elemen tabel yang masih ada. Pergeseran diperlukan untuk menjaga keterurutan tempat elemen tabel dan menjaga sifat tabel yang elemennya harus kontigu. Untuk menghindari pergeseran ini, maka digunakan representasi lain yang secara lojik mempunyai keterurutan, namun dalam memori komputer secara fisik tidak disimpan secara berurutan (kontigu). Representasi ini dikenal sebagai representasi list berkait /senarai berantai (linked list) 20 8/25/2015

Referensi Diktat Kuliah IF2181 Struktur Data, Inggriani Liem, ITB, 2003. 21 8/25/2015

22 8/25/2015 THANK YOU