Algoritma dan Pemrograman – Pertemuan 3 & 4 Sorting (Pengurutan)

Slides:



Advertisements
Presentasi serupa
Sorting (Pengurutan).
Advertisements

ARRAY 1 DIMENSI #10 STIKOM Searching Pengantar Manfaat Inisialisasi
Pengertian Algoritma Sebuah algoritma merupakan deskripsi pelaksanaan suatu proses, dimana algoritma disusun oleh sederetan langkah instruksi yang logis.
STRUKTUR DATA (3) sorting array
SORTING.
Algoritma & Struktur Data Sorting Evangs Mailoa.
Algoritma dan Struktur Data
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
Desain dan Analisis Algoritma
Design and Analysis Algorithm
Pengurutan (Sorting) Diperlukan untuk mempercepat pencaharian suatu target dalam suatu daftar (list). Jenis Pengurutan:  Ascending Pengurutan dilakukan.
Sorting (Pengurutan).
Pertemuan 3 ALGORITMA & FUNGSI KOMPLEKSITAS
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Metode Pengurutan (Sorting)
Algoritma Brute Force Oleh: Muhammad Musta’in ( )
MATERI PERKULIAHAN ANALISIS ALGORITMA
MATERI PERKULIAHAN ANALISIS ALGORITMA
Fondasi Pemrograman & Struktur Data
KUG1A3 Algoritma& Pemrograman
Algoritma dan Struktur Data 1 pertemuan 11
CSG3F3/ Desain dan Analisis Algoritma
LANJUTAN DARI SHORTING
Bahan Kuliah IF2211 Strategi Algoritma Oleh: Rinaldi Munir
Algoritma dan Struktur Data
MATERI PERKULIAHAN ANALISIS ALGORITMA
KUG1A3 Algoritma& Pemrograman
Algoritma dan Struktur Data 1 pertemuan 12
Pengurutan (Sorting).
Sorting.
ALGORITMA Anifuddin Azis.
Algoritme dan Pemrograman
Metode pemecahan masalah
Imam Gunawan, M. Kom STMIK-AMIK Jayanusa Padang
Algoritma dan Pemrograman Sorting
KUG1E3/ Pemrograman Terstruktur 1
Review Array Sri Nurhayati, MT.
BINARY SEARCH Tim Algoritma Pemrograman Teknik Informatika
Pertemuan ke 9.
Nama : Siti Hajar Unit : B Nim : No.Hp : 0852 – 2000 – 3786.
Desain dan Analisis Algoritma
Dasar – dasar Pemrograman
Shorting (Pengurutan)
Bubble sort.
Sorting.
ALGORITMA BRUTE FORCE Pertemuan 3.
Algoritma Brute Force.
Sorting (Pengurutan).
Pengurutan (Shorting)
Pertemuan 18 CODE OPTIMIZATION
Algoritma & Pemrograman II STT Wastukancana Purwakarta
SORTING ARRAY SESI 2.
ALGORITMA PENGURUTAN (SORTING)
Review Array Sri Nurhayati, MT.
Algoritme dan Pemrograman
Algoritma dan Struktur Data
Sorting Dasar Pemrograman
PEMROGRAMAN Belajar memrogram : belajar tentang metodologi pemecahan masalah, kemudian menuangkannya dalam suatu notasi yang mudah dipahami Belajar bahasa.
Algoritma Brute Force.
KUG1E3/ Pemrograman Terstruktur 1
Struktur Data Oleh: Suhendro
Selection Sort Merupakan sebuah algoritma pengurutan yang mencari element terkecil dari suatu list data tidak terurut (unsorted list) kemudian menukarnya.
Desain dan Analisis Algoritma
Pengurutan (sorting).
Defri Kurniawan SORTING Defri Kurniawan
Sorting (Pengurutan).
Algoritma dan struktur data
SORTING.
FONDASI PEMROGRAMAN & STRUKTUR DATA #9
Transcript presentasi:

Algoritma dan Pemrograman – Pertemuan 3 & 4 Sorting (Pengurutan) P r a j a n t o W a h y u A d i prajanto@dsn.dinus.ac.id +6285 641 73 00 22

Rencana Kegiatan Perkuliahan Semester # Pokok Bahasan 1 Review Fungsi 2 Parameter & Tipe Kembalian Fungsi 3 Sorting 4 5 Searching 6 7 Review Pertemuan 1 - 6 8 Ujian Tengah Semester # Pokok Bahasan 9 Analisis Rekuren 10 11 Struck & ADT 12 13 Pointer 14 15 Presentasi Proyek Akhir / Tugas Besar 16 Ujian Akhir Semester

1 2 4 5 Content Algoritma Penyelesaian Masalah dengan Algoritma Algoritma Bubble Sort 4 Algoritma Selection Sort 5

Algoritma Apa itu Algoritma?

Algoritma Meskipun tidak ada definisi seragam dari kata ‘Algoritma’, namun terdapat definisi umum yang menjelaskan konsep dari algoritma: Algoritma adalah urutan instruksi-instruksi yang jelas (logis) untuk menyelesaikan suatu masalah. Yakni untuk memperoleh output yang diperlukan untuk setiap input logis dalam waktu yang terbatas (Levitin, 2012)

Algoritma Kata ‘instruksi’ tersebut mengacu kepada kemampuan dari sesuatu (benda) atau seseorang untuk memahami dan melakukan instruksi yang diberikan. Yang dimaksud dalam hal ini adalah ‘komputer’. Perlu diingat bahwa sebelum era perangkat elektronik ditemukan, kata ‘komputer’ (computer) bemakna seseorang yang terlibat dalam proses perhitungan (compute/calculate) numerik.

Algoritma Konsep Algoritma (Levitin, 2012) Masalah Algoritma ‘Komputer’ Input Output

Penyelesaian Masalah dg Algoritma Hal-hal penting dalam penyelesaian masalah dengan algoritma: Setiap langkah dalam sebuah algoritma harus jelas (nonambiguity), Rentang nilai input harus ditentukan secara rinci, Sebuah algoritma dapat digambarkan dalam beberapa cara yang berbeda,

Penyelesaian Masalah dg Algoritma Hal-hal penting dalam penyelesaian masalah dengan algoritma: Terdapat beberapa algoritma yang dapat digunakan dalam menyelesaikan masalah yang sama, Algoritma-algoritma yang digunakan dalam masalah yang sama dapat berasal dari gagasan-gagasan yang berbeda dan mampu menyelesaikan masalah dengan kecepatan yang sangat berbeda.

Penyelesaian Masalah dg Algoritma Contoh penyelesaian FPB Dengan Algoritma Euclidean Langkah-langkah menghitung FPB dari dua bilangan m dan n: Jika nilai n = 0, maka nilai FPB adalah m kemudian berhenti (Selesai), jika tidak maka ke langkah 2 Bagi nilai m dengan n, kemudian simpan nilai sisa hasil bagi (remainder) ke variable r Berikan nilai n ke m, dan nilai r ke n, kemudian kembali ke langkah 1

Penyelesaian Masalah dg Algoritma Contoh penyelesaian FPB Dengan Algoritma Euclidean Atau dapat dituliskan dalam pseudocode, sbb: Algoritma Euclidean(m,n) //Hitung FPB(m, n) dengan algoritma Euclidean //Input: dua bilangan bulat positif bukan nol, m dan n //Output: nilai FPB dari m dan n while n ≠ 0 do r  m mod n m  n n  r return m

Algoritma Sorting Brute Force Brute force adalah pendekatan yang ‘mudah’ untuk menyelesaikan masalah. Kata force mengacu pada sebuah computer dan bukan pada sesuatu yang bersifat cerdas. Brute force merupakan pendekatan yang paling mudah untuk diimplementasikan. Pada bab ini akan dibahas permasalahan yang popular dalam bidang komputasi yakni pengurutan (sorting) dengan pendekatan Brute Force. Beberapa algoritma pengurutan brute force yang sederhana diantaranya adalah Selection Sort dan Bubble Sort

Algoritma Selection Sort Selection sort melakukan pemindaian pada seluruh elemen kemudian mencari elemen terkecil dan menukarnya dengan elemen pertama, meletakkan elemen terkecil pada posisi terakhir pada elemen yang telah diurutkan (sorted list). Kemudian dilakukan pemindaian dari elemen ke-2 untuk mencari elemen terkecil dari n – 1 elemen terakhir dan menukar elemen terkecil tersebut dengan elemen kedua, meletakkan elemen terkecil ke-2 pada sorted list. Lakukan iterasi hingga seluruh elemen tersusun secara urut.

Algoritma Selection Sort Algoritma SelectionSort(A[0 … n-1]) //Mengurutkan array yang diberikan dengan selection sort //Input: sebuah array A[0 … n-1] dengan elemen-elemen yang dapat diurutkan //Output: array A[0 … n-1] yang telah diurutkan for i  0 to n – 2 do min  i for j  i + 1 to n – 1 do if A[j] < A[min] min  j swap A[i] and A[min]

Algoritma Selection Sort Contoh: |90 50 70 95 30 35 15 15 |50 70 95 30 35 90 15 30 |70 95 50 35 90 15 30 35 |95 50 70 90 15 30 35 50 |95 70 90 15 35 35 50 70 |95 90 15 35 35 50 70 90 |95

Algoritma Bubble Sort Jenis algoritma pengurutan lain yang berbasis brute force adalah Bubble Sort. Algoritma bubble sort membandingkan elemen-elemen yang berdekatan dan menukarnnya jika elemen-elemen tersebut belum urut. Dengan melakukan hal tersebut secara berulang, maka akan mem-bubble up elemen terbesar pada posisi terakhir.

Algoritma Bubble Sort Pada iterasi selanjutnya akan mem-bubble up elemen ke-2 dan seterusnya hingga pada proses ke n – 1 semua elemen akan terurut. Proses iterasi i (0 ≤ i ≤ n-2) dari bubble sort dapat direpresentasikan sebagai berikut: A0, . . ., Aj  Aj+1, . . ., An-i-1 | An-i ≤ . . . ≤ An-1

Algoritma Bubble Sort Algoritma BubbleSort(A[0 … n-1]) //Mengurutkan array yang diberikan dengan selection sort //Input: sebuah array A[0 … n-1] dengan elemen-elemen yang dapat diurutkan //Output: array A[0 … n-1] yang telah diurutkan for i  0 to n – 2 do for j  0 to n – 2 – i do if A[j + 1] < A[j] swap A[j] and A[j+1]

Algoritma Bubble Sort Contoh: 90  50 70 95 30 35 15 50 90  70 95 30 35 15 50 70 90  95  30 35 15 50 70 90 30 95  35 15 50 70 90 30 35 95  15 50 70 90 30 35 15 | 95

Algoritma Bubble Sort Contoh: 50  70  90  30 35 15 | 95 50 70 30 90  35 15 | 95 50 70 30 35 90  15 | 95 50 70 30 35 15 | 90 95

Algoritma Bubble Sort Contoh: 50  70  30 35 15 | 90 95 50 30 70  35 15 | 90 95 50 30 35 70  15 | 90 95 50 30 35 15 | 70 90 95

Algoritma Bubble Sort Contoh: 50  30 35 15 | 70 90 95 30 50  35 15 | 70 90 95 30 35 50  15 | 70 90 95 30 35 15 | 50 70 90 95

Algoritma Bubble Sort Contoh: 30  35  15 | 50 70 90 95 30 15 | 35 50 70 90 95

Algoritma Bubble Sort Contoh: 30  15 | 35 50 70 90 95 15 | 30 35 50 70 90 95

Sekian TERIMAKASIH