Algoritma sorting dasar (lanjutan) Pertemuan 11

Preview:

DESCRIPTION

Algoritma sorting dasar (lanjutan) Pertemuan 11. Matakuliah: T0456 / Algoritma dan Metode Object Oriented Programming Tahun: 2007. Learning Outcomes. Pada akhir pertemuan ini, diharapkan: Mahasiswa dapat menerapkan algortima sorting dasar dalam program C++. Buku Referensi: - PowerPoint PPT Presentation

Citation preview

Algoritma sorting dasar (lanjutan)

Pertemuan 11

Matakuliah : T0456 / Algoritma dan Metode Object Oriented Programming

Tahun : 2007

Bina Nusantara

Learning Outcomes

Pada akhir pertemuan ini, diharapkan:Mahasiswa dapat menerapkan algortima sorting dasar dalam program C++.

Buku Referensi:Algorithms in C++, Addison Wesley, 1992.

Websites:

http://www.deitel.com

3

Bina Nusantara

Outline Materi

• Algoritma selection sort• Algoritma insertion sort• Algoritma bubble sort• Contoh program sorting

4

Bina Nusantara

Insertion sort

• Algoritma sorting dengan menyisipkan data yang belum terurut pada posisinya yang sesuai sampai seluruh data terurut.

• Pada putaran pertama urutkan 2 data pertama. Pengurutan ini bersifat relatif, artinya kedua data ini belum tentu 2 data terkecil dari seluruh data

Bina Nusantara

Insertion sort (Putaran 1)[0] [1] [2] [3] [4]

1252 69 40 48

Pindahkan ke Temp

12 52 69 40 48

Banding, geser

5212 69 40 48

Sisip

5212 69 40 48

Temp

Bina Nusantara

Insertion sort (Putaran 2)[0] [1] [2] [3] [4]

5212 69 40 48

Pindahkan ke Temp

12 5269 40 48

Banding

Sisip

5212 69 40 48

Temp

Bina Nusantara

Insertion sort (Putaran 3)[0] [1] [2] [3] [4]

5212 69 40 48

Pindahkan ke Temp

12 5240 69 48

Banding, geser

5212 6940 48

Temp

Banding, geser

521240 4869

Banding

Sisip

5212 40 4869

Bina Nusantara

Insertion sort (Putaran 4)[0] [1] [2] [3] [4]

4012 52 69 48

Pindahkan ke Temp

12 4048 52 69

Banding, geser

4012 5248 69

Temp

Banding, geser

401248 6952

Banding

Sisip

4812 40 6952

Bina Nusantara

Insertion sortCode algoritma:

Void Insertion (int* Data, int n){

int i, j, temp;

for (i=1; i<n; i++){

temp = Data[i];

for (j=i-1; (j>=0) && (Data[j]>temp); j--)

Data[j+1]=Data[j];

Data[j+1]=temp;

}

}

Bina Nusantara 11

Diskusi dan Tanya JawabLatihan soal

Recommended