CS1023 Pemrograman Komputer

Slides:



Advertisements
Presentasi serupa
BAB III – ARRAY STATIS II
Advertisements

Algoritma Sorting Alpro-2.
STRUKTUR DATA (3) sorting array
Sorting (Pengurutan).
ARRAY 1 DIMENSI #10 STIKOM Searching Pengantar Manfaat Inisialisasi
STRUKTUR DATA sorting array
SORTING (PENGURUTAN) Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending.
PENGURUTAN (SORTING).
SORTING.
STRUKTUR DATA (3) sorting array
SORTING.
Algoritma & Struktur Data Sorting Evangs Mailoa.
Teknik Informatika - Universitas Muhammadiyah Malang (UMM)
BAB 6 S O R T I R Sebelum mengetahui lebih jauh tentang sorting, sebaiknya kita ingat kembali pengertian file dan record. File adalah kumpulan record,
BAB III PENGURUTAN DATA (SORTING) Tertia Avini, S. Kom tertiaavini
BAB III PENGURUTAN DATA (SORTING) Tertia Avini, S. Kom tertiaavini
STRUKTUR DATA (4) Sorting dan Searching Array
Pengurutan (Sorting) Diperlukan untuk mempercepat pencaharian suatu target dalam suatu daftar (list). Jenis Pengurutan:  Ascending Pengurutan dilakukan.
Sorting (Pengurutan).
Metode Pengurutan (Sorting)
CS1023 Pemrograman Komputer Lecture 20 Array / Tabel [2]
Sorting Algorithm Norma Amalia, ST, M.Eng.
KUG1C3 Dasar Pemrograman
KUG1A3 Algoritma& Pemrograman
KUG1A3 Algoritma& Pemrograman
Algoritma dan Struktur Data 1 pertemuan 11
Pencarian pada Array Tim PHKI Modul Dasar Pemrograman
STRUKTUR DATA Chapt 07 : Sorting Oleh : Yuli Praptomo PHS, S.Kom.
Algoritma dan Struktur Data
STRUKTUR DATA Marjiyono, S.kom
KUG1C3 Dasar Algoritma & Pemrograman
KUG1A3 Algoritma& Pemrograman
Dasar algoritma dan pemrograman
PENGURUTAN (SORTING).
SORTING (Lanjut).
Pengurutan (Sorting).
STRUKTUR DATA (3) sorting array
Sorting.
Pengurutan pada Array Tim PHKI Modul Dasar Pemrograman
STRUKTUR DATA (3) sorting array
Metode pemecahan masalah
STRUKTUR DATA sorting array
Imam Gunawan, M. Kom STMIK-AMIK Jayanusa Padang
KUG1E3/ Pemrograman Terstruktur 1
Review Array Sri Nurhayati, MT.
BINARY SEARCH Tim Algoritma Pemrograman Teknik Informatika
Nama : Siti Hajar Unit : B Nim : No.Hp : 0852 – 2000 – 3786.
Pengurutan Rekaman SUB Pengurutan Gelembung.
SORTING (PENGURUTAN) Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending.
IT234 Algoritma dan Struktur Data
ARRAY STATIS Sri Nurhayati, MT.
Sorting.
Sorting (Pengurutan).
STRUKTUR DATA (3) sorting array
Algoritma & Pemrograman II STT Wastukancana Purwakarta
SORTING ARRAY SESI 2.
ALGORITMA PENGURUTAN (SORTING)
Review Array Sri Nurhayati, MT.
SORTING (PENGURUTAN) Sorting adalah proses mengatur sekumpulan objek menurut aturan atau susunan tertentu. Urutan objek tersebut dapat menaik (ascending.
ARRAY STATIS Sri Nurhayati, MT.
IT234 Algoritma dan Struktur Data
Sorting Dasar Pemrograman
STRUKTUR DATA (3) sorting array
IT234 Algoritma dan Struktur Data
STRUKTUR DATA (3) sorting array
Pengurutan (sorting).
IT234 Algoritma dan Struktur Data
MODEL SORTING Kelompok V Rahmawati ( )
Sorting (Pengurutan).
SORTING.
Transcript presentasi:

CS1023 Pemrograman Komputer Lecture 21 Array / Tabel [3]

Topik Bahasan Pengurutan Bubble Sort Selection Sort Insertion Sort

Bubble Sort Merupakan salah satu bentuk pengurutan yang menerapkan pertukaran harga pada prosesnya. Idenya adalah gelembung air yang akan "mengapung" : elemen berharga kecil akan "diapungkan", artinya diangkat ke atas melalui pertukaran. Proses dilakukan sebanyak N tahapan (yang dalam sorting disebut sebagai "pass").Pada setiap Pass, tabel "terdiri dari" dua bagian : bagian yang sudah terurut yaitu [1..Pass-1] dan ide dasarnya adalah mengapungkan elemen ke "pass" sampai pada tempatnya.

Bubble Sort : Proses Untuk setiap dua elemen suksesif TabIntK dan TabIntK-1, K [2..N], TabIntK-1 ≤ TabIntK harus terpenuhi. Dengan demikian TabIntK harus ditukar dengan TabIntK-1 jika sifat tersebut tidak dipenuhi. Karena dilakukan secara berurutan, TabInt1 berisi harga terkecil Untuk setiap dua elemen suksesif TabIntK dan TabIntK-1, K [3..N], TabIntK-1 ≤ TabIntK harus terpenuhi. Dengan demikian TabIntK harus ditukar dengan TabIntK-1 jika sifat di atas tidak dipenuhi Karena dilakukan secara berurutan, TabInt[1..2] terurut Untuk setiap dua elemen suksesif TabIntK dan TabIntK-1, K [4..N], TabIntK-1 ≤ TabIntK harus terpenuhi. Dengan demikian TabIntK harus ditukar dengan TabIntK-1 jika sifat di atas tidak dipenuhi. Karena dilakukan secara berurutan, TabInt[1..3] terurut . N-1 .Untuk setiap dua elemen suksesif TabIntK dan TabIntK-1, K [N-1..N], TabIntK-1 < TabInt K harus terpenuhi. Dengan demikian TabIntK harus ditukar dengan TabIntK-1 jika sifat di atas tidak dipenuhi

Bubble Sort : Proses Karena dilakukan secara berurutan, TabInt[1..N-1] terurut TabInt [1..N] sudah terurut : TabInt1 ≤ TabInt2 ≤ TabInt3 ...... ≤ TabIntN

Modifikasi Bubble Sort Menghentikan proses jika tidak terjadi lagi pertukaran. Manfaatkan sifat ini dengan memakai sebuah besaran boolean, dan tuliskanlah algoritmanya untuk memperoleh versi yang optimum. Versi asli metoda ini biasanya paling diingat karena prinsipnya yang "alamiah", tapi performansinya tidak bagus (kecuali versi yang sudah dibuat efisien), maka tidak direkomendasikan untuk dipakai.

Selection Sort Idenya adalah menghasilkan nilai maksimum tabel (untuk efisiensi, hanya indeks dimana harga maksimum ditemukan yang dicatat), kemudian menukarnya dengan elemen terujung. Elemen terujung ini "diisolasi" dan tidak diikut sertakan pada proses berikutnya. Proses diulang untuk sisa tabel. Karena elemen terujung berharga maksimum adalah indeks pertama tabel, maka tabel terurut mengecil : TabInt1≥TabInt2 ≥TabInt3 ...... ≥TabIntN

Selection Sort : Proses Proses dilakukan sebanyak N tahapan (yang dalam sorting disebut sebagai "pass") : Tentukan IMAX [1..N], TabIntImax adalah maksimum dari TabInt[1..N] Tukar TabIntImax dengan TabInt1 Tentukan IMAX [2..N], TabIntImax adalah maksimum dari TabInt[2..N] Tukar TabIntImax dengan TabInt2 Tentukan IMAX [3..N], TabIntImax adalah maksimum dari TabInt[3..N] Tukar TabIntImax dengan TabInt3 N-1 Tentukan IMAX [N-1..N], TabIntImax adalah maksimum dari TabInt[N-1..N] Tukar TabIntImax dengan TabIntN-1 TabInt [1..N] sudah terurut : TabInt1≥TabInt2 ≥TabInt3 ...... ≥TabIntN

Insertion Sort Idenya adalah mencari tempat yang "tepat" untuk setiap elemen tabel, dengan cara sequential search, kemudian setiap kali menyisipkan sebuah elemen tabel yang diproses ke tempatnya yang seharusnya.

Insertion Sort : Proses Proses dilakukan sebanyak N tahapan: TabInt1 dianggap sudah tepat tempatnya TabInt2 harus dicarikan tempat yang tepat pada TabInt[1..2], yaitu i Sisipkan TabInt2 pada TabInti. TabInt [1..2] terurut membesar TabInt3 harus dicarikan tempat yang tepat pada TabInt[1..3], yaitu i Sisipkan TabInt3 pada TabInti. TabInt [1..3] terurut membesar N-1 .TabIntN-1 harus dicarikan tempat yang tepat pada TabInt[1..N-1], yaitu i Sisipkan TabIntN-1 pada TabIntii..TabInt [1..N-1] terurut membesar N TabInt [1..N] sudah terurut : TabInt1 ≤ TabInt2 ≤ TabInt3 ...... ≤ TabIntN

Insertion Sort : Proses Pada setiap Pass, tabel "terdiri dari" dua bagian : yang sudah terurut yaitu [1..Pass – 1] dan sisanya [Pass..Nmax] yang belum terurut. Ambil elemen TabIntPass, sisipkan ke dalam TabInt[1..Pass-1] dengan tetap menjaga keterurutan. Untuk menyisipkan TabIntPass ke TabInti, harus terjadi "pergeseran" elemen tabel TabInt [1..Pass]. Pergeseran ini dapat dilakukan sekaligus dengan pencarian i. Pencarian dapat dihentikan segera dengan memanfaatkan sifat keterurutan TabInt[1..Pass]. Metoda pengurutan ini cukup efisien (≅ N)terutama untuk N yang "kecil". Terdapat 2 varian : Tanpa Sentinel / Dengan Sentinel

Insertion Sort : Ilustrasi

Ringkasan Pengurutan Bubble Sort Selection Sort Insertion Sort