Algoritma dan Struktur Data

Slides:



Advertisements
Presentasi serupa
Algoritma Sorting Alpro-2.
Advertisements

- PERTEMUAN 11 - SORTING (PENGURUTAN)
STRUKTUR DATA (3) sorting array
Sorting (Pengurutan).
ARRAY 1 DIMENSI #10 STIKOM Searching Pengantar Manfaat Inisialisasi
PENGURUTAN ( SORTING ) Fajrizal.
STRUKTUR DATA sorting array
QUICK SORT Kelompok 9.
Algoritma Divide and Conquer
Algoritma Sorting (Selection – Insertion)
Design and Analysis of ALGORITHM (Session 3)
STRUKTUR DATA (3) sorting array
SORTING.
Pertemuan – 14 Sorting (Bab 8) Informatics Engineering Department
Quick Sort dan Merge Sort
Sorted = terurut menurut kaidah/aturan tertentu
Algoritma dan Struktur Data
Teknik Informatika - Universitas Muhammadiyah Malang (UMM)
Source: Sorting Algorithms source:
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,
STRUKTUR DATA (4) Sorting dan Searching Array
Algoritma dan Struktur Data
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Algoritma Sorting Tenia Wahyuningrum.
Pengurutan (Sorting) Diperlukan untuk mempercepat pencaharian suatu target dalam suatu daftar (list). Jenis Pengurutan:  Ascending Pengurutan dilakukan.
Sorting 2007/2008 – Ganjil – Minggu 5.
SORTING Matakuliah : T0974 / Algoritma dan Metode Object Oriented Programming I Tahun : 2008 Versi : 1/0.
Pertemuan 7 PRIORITY QUEUE & HEAP
Pertemuan 10 DIVIDE And CONQUER Lanjutan ….
Algoritma dan Struktur Data
Metode Pengurutan (Sorting)
Algoritma Divide and Conquer (Bagian 2) Wahyul Wahidah Maulida, ST.,M.Eng.
Algoritma sorting dasar (lanjutan) Pertemuan 11
Algoritma dan Struktur Data
Sorting Algorithm Norma Amalia, ST, M.Eng.
MATERI PERKULIAHAN ANALISIS ALGORITMA
Struktur Data Algoritma Sorting
STRUKTUR DATA Chapt 07 : Sorting Oleh : Yuli Praptomo PHS, S.Kom.
Algoritma dan Struktur Data
STRUKTUR DATA Marjiyono, S.kom
Sorting Pengurutan data dalam struktur data sangat penting terutama untuk data yang beripe data numerik ataupun karakter. Pengurutan dapat dilakukan secara.
Struktur Data Prio Handoko, S. Kom., M.T.I.
SORTING (Lanjut).
STRUKTUR DATA (3) sorting array
MATERI PERKULIAHAN ANALISIS ALGORITMA
Sorting.
Faktor analisa algoritma
STRUKTUR DATA (3) sorting array
Metode pemecahan masalah
STRUKTUR DATA sorting array
Imam Gunawan, M. Kom STMIK-AMIK Jayanusa Padang
Sorting Shell sort, Merge sort, Quick sort
Library Sort Sagi Arsyad
IT234 Algoritma dan Struktur Data
Bubble sort.
Sorting.
STRUKTUR DATA (3) sorting array
SORTING ARRAY SESI 2.
IT234 Algoritma dan Struktur Data
Sorting Dasar Pemrograman
STRUKTUR DATA (3) sorting array
Struktur Data Oleh: Suhendro
IT234 Algoritma dan Struktur Data
STRUKTUR DATA (3) sorting array
Pengurutan (sorting).
IT234 Algoritma dan Struktur Data
MODEL SORTING Kelompok V Rahmawati ( )
Sorting.
SORTING.
FONDASI PEMROGRAMAN & STRUKTUR DATA #9
Transcript presentasi:

Algoritma dan Struktur Data Pertemuan 4 : Sorting Disusun oleh : Silvester Dian Handy Permana, S.T., M.T.I. Fakultas Telematika, Universitas Trilogi

Outline Beberapa algoritma untuk melakukan sorting: Bubble sort Selection sort Insertion sort Shell sort Merge sort Untuk masing-masing algoritma: Ide dasar Contoh eksekusi Algoritma Analisa running time/kompleksitas

Sort Sorting = pengurutan Sorted = terurut menurut kaidah/aturan tertentu Data pada umumnya disajikan dalam bentuk sorted. Contoh: Nama di buku telpon Kata-kata dalam kamus File-file di dalam sebuah directory Indeks sebuah buku Data mutasi rekening tabungan CD di toko musik Bayangkan jika data di atas tidak terurut!

Bubble sort

Bubble sort: Ide dasar Bubble = busa/udara dalam air – apa yang terjadi? Busa dalam air akan naik ke atas. Mengapa? Ketika busa naik ke atas, maka air yang di atasnya akan turun memenuhi tempat bekas busa tersebut. Pada setiap iterasi, bandingkan elemen dengan sebelahnya: yang busa naik, yang air turun!

Bubble sort: Sebuah iterasi

Bubble sort: Iterasi berikutnya Perhatikan bahwa pada setiap iterasi, dapat dipastikan satu elemen akan menempati tempat yang benar

Bubble sort: Terminasi algoritma Berhenti di sini! Mengapa?

Bubble sort Running time: Variasi: Worst case: O(n2 ) Best case: O(n) original bubble sort: hanya bergerak ke satu arah bi-directional bubble sort bergerak dua arah (bolak balik)

Selection sort

Selection sort: Ide dasar Kondisi awal: Unsorted list = data Sorted list = kosong Ambil yang terbaik (select) dari unsorted list, tambahkan di belakang sorted list. Lakukan terus sampai unsorted list habis

Selection sort: Contoh

Selection sort: Contoh

Selection sort: Contoh

Selection sort: Analisis Running time: Worst case: O(n2) Best case: O(n2) Apakah running time yang sebenarnya merefleksikan analisis tersebut?

Insertion sort: Ide dasar Kondisi awal: Unsorted list = data Sorted list = kosong Ambil sembarang elemen dari unsorted list, sisipkan (insert) pada posisi yang benar dalam sorted list. Lakukan terus sampai unsorted list habis. Bayangkan anda mengurutkan kartu.

Insertion sort: Ide dasar

Insertion sort: Ide dasar

Insertion sort: Contoh

Insertion sort: Contoh (lanj.)

Insertion sort: Contoh (lanj.)

Insertion sort: Contoh (lanj.)

Insertion sort: Analisis Running time analysis: Worst case: O(n2) Best case: O(n) Apakah insertion sort lebih cepat dari selection sort?

Merge sort: Ide dasar Divide and conquer approach Idenya: Menggabungkan (merge) 2 sorted array butuh waktu O(n) Membagi sebuah array jadi 2 hanya butuh waktu O(1)

Merge sort: Algoritma rekursif Base case: jika jumlah elemen dalam array yang perlu di-sort adalah 0 atau 1. Recursive case: secara rekursif, sort bagian pertama dan kedua secara terpisah. Penggabungan: Merge 2 bagian yang sudah di-sort menjadi satu

Merge sort: Algoritma rekursif

Merge sort: Algoritma rekursif

Merge sort: Algoritma rekursif

Merge sort: Analisis Running Time: O(n log n)

QA