際際滷

際際滷Share a Scribd company logo
Oleh Drs KH.BUDI YONO
Bubble Sort
 Bubble Sort adalah suatu metode pengurutan yang
membandingkan elemen yang sekarang dengan
elemen yang berikutnya.
 Apabila elemen yang sekarang > elemen
berikutnya, maka posisinya ditukar, jika tidak maka
tidak perlu ditukar.
Bubble Sort
 Misalkan kita memiliki data acak sebagai berikut :
5, 34, 32, 25, 75, 42, 22, 2
Bubble Sort
 Data sebelumnya :
5, 34, 32, 25, 75, 42, 22, 2
 Langkah ke 0 :
 5 > 34 ? TIDAK (tetap) = 5, 34
 34 > 32 ? YA (tukar) = 32, 34
 34 > 25 ? YA (tukar) = 25, 34
 34 > 75 ? TIDAK (tetap) = 34, 75
 75 > 42 ? YA (tukar) = 42, 75
 75 > 22 ? YA (tukar) = 22, 75
 75 > 2 ? YA (tukar) = 2, 75
 Hasil :
5, 32, 25, 34, 42, 22, 2, 75
Bubble Sort
 Data sebelumnya :
5, 32, 25, 34, 42, 22, 2, 75
 Langkah ke 1 :
 5 > 32 ? TIDAK (tetap) = 5, 32
 32 > 25 ? YA (tukar) = 25, 32
 32 > 34 ? TIDAK (tetap) = 32, 34
 34 > 42 ? TIDAK (tetap) = 34, 42
 42 > 22 ? YA (tukar) = 22, 42
 42 > 2 ? YA (tukar) = 2, 42
 42 > 75 ? TIDAK (tetap) 42, 75
 Hasil :
5, 25, 32, 34, 22, 2, 42, 75
Bubble Sort
 Data sebelumnya :
5, 25, 32, 34, 22, 2, 42, 75
 Langkah ke 2 :
 5 > 25 ? TIDAK (tetap) = 5, 25
 25 > 32 ? TIDAK (tetap) = 25, 32
 32 > 34 ? TIDAK (tetap) = 32, 34
 34 > 22 ? YA (tukar) = 22, 34
 34 > 2 ? YA (tukar) = 2, 34
 34 > 42 ? TIDAK (tetap) = 34, 42
 42 > 75 ? TIDAK (tetap) = 42, 75
 Hasil :
5, 25, 32, 22, 2, 34, 42, 75
Bubble Sort
 Data sebelumnya :
5, 25, 32, 22, 2, 34, 42, 75
 Langkah ke 3 :
 5 > 25 ? TIDAK (tetap) = 5, 25
 25 > 32 ? TIDAK (tetap) = 25, 32
 32 > 22 ? YA (tukar) = 22, 32
 32 > 2 ? YA (tukar) = 2, 32
 32 > 34 ? TIDAK (tetap) = 32, 34
 34 > 42 ? TIDAK (tetap) = 34, 42
 42 > 75 ? TIDAK (tetap) = 42, 75
 Hasil :
5, 25, 22, 2, 32, 34, 42, 75
Bubble Sort
 Data sebelumnya :
5, 25, 22, 2, 32, 34, 42, 75
 Langkah ke 4 :
 5 > 25 ? TIDAK (tetap) = 5, 25
 25 > 22 ? YA (tukar) = 22, 25
 25 > 2 ? YA (tukar) = 2, 25
 25 > 32 ? TIDAK (tetap) = 25, 32
 32 > 34 ? TIDAK (tetap) = 32, 34
 34 > 42 ? TIDAK (tetap) = 34, 42
 42 > 75 ? TIDAK (tetap) = 42, 75
 Hasil :
5, 22, 2, 25, 32, 34, 42, 75
Bubble Sort
 Data sebelumnya :
5, 22, 2, 25, 32, 34, 42, 75
 Langkah ke 5 :
 5 > 22 ? TIDAK (tetap) = 5, 22
 22 > 2 ? YA (tukar) = 2, 22
 22 > 25 ? TIDAK (tetap) = 22, 25
 25 > 32 ? TIDAK (tetap) = 25, 32
 32 > 34 ? TIDAK (tetap) = 32, 34
 34 > 42 ? TIDAK (tetap) = 34, 42
 42 > 75 ? TIDAK (tetap) = 42, 75
 Hasil :
5, 2, 22, 25, 32, 34, 42, 75
Bubble Sort
 Data sebelumnya :
5, 2, 22, 25, 32, 34, 42, 75
 Langkah ke 6 :
 5 > 2 ? YA (tukar) = 2, 5
 5 > 22 ? TIDAK (tetap) = 5, 22
 22 > 25 ? TIDAK (tetap) = 22, 25
 25 > 32 ? TIDAK (tetap) = 25, 32
 32 > 34 ? TIDAK (tetap) = 32, 34
 34 > 42 ? TIDAK (tetap) = 34, 42
 42 > 75 ? TIDAK (tetap) = 42, 75
 Hasil :
2, 5, 22, 25, 32, 34, 42, 75
Bubble Sort
 Data Awal :
5, 34, 32, 25, 75, 42, 22, 2
 Data Akhir :
2, 5, 22, 25, 32, 34, 42, 75
#include <iostream.h>
#include <conio.h>
#include <iomanip.h>
void main()
{
int data[8] = {5, 34, 32, 25, 75, 42, 22, 2};
int swap;
cout<<"Data sebelum diurutkan : "<<endl;
for(int i=0; i<8; i++)
{
cout<<setw(3)<<data[i];
}
cout<<endl;
for(int i=0; i<7; i++)
{
for(int j=0; j<7; j++)
{
if(data[j] > data[j+1])
{
swap = data[j];
data[j] = data[j+1];
data[j+1] = swap;
}
}
}
cout<<"Data setelah diurutkan : "<<endl;
for(int i=0; i<8; i++)
{
cout<<setw(3)<<data[i];
}
getch();
}

More Related Content

Materi kuliah 07 sort part 2

  • 2. Bubble Sort Bubble Sort adalah suatu metode pengurutan yang membandingkan elemen yang sekarang dengan elemen yang berikutnya. Apabila elemen yang sekarang > elemen berikutnya, maka posisinya ditukar, jika tidak maka tidak perlu ditukar.
  • 3. Bubble Sort Misalkan kita memiliki data acak sebagai berikut : 5, 34, 32, 25, 75, 42, 22, 2
  • 4. Bubble Sort Data sebelumnya : 5, 34, 32, 25, 75, 42, 22, 2 Langkah ke 0 : 5 > 34 ? TIDAK (tetap) = 5, 34 34 > 32 ? YA (tukar) = 32, 34 34 > 25 ? YA (tukar) = 25, 34 34 > 75 ? TIDAK (tetap) = 34, 75 75 > 42 ? YA (tukar) = 42, 75 75 > 22 ? YA (tukar) = 22, 75 75 > 2 ? YA (tukar) = 2, 75 Hasil : 5, 32, 25, 34, 42, 22, 2, 75
  • 5. Bubble Sort Data sebelumnya : 5, 32, 25, 34, 42, 22, 2, 75 Langkah ke 1 : 5 > 32 ? TIDAK (tetap) = 5, 32 32 > 25 ? YA (tukar) = 25, 32 32 > 34 ? TIDAK (tetap) = 32, 34 34 > 42 ? TIDAK (tetap) = 34, 42 42 > 22 ? YA (tukar) = 22, 42 42 > 2 ? YA (tukar) = 2, 42 42 > 75 ? TIDAK (tetap) 42, 75 Hasil : 5, 25, 32, 34, 22, 2, 42, 75
  • 6. Bubble Sort Data sebelumnya : 5, 25, 32, 34, 22, 2, 42, 75 Langkah ke 2 : 5 > 25 ? TIDAK (tetap) = 5, 25 25 > 32 ? TIDAK (tetap) = 25, 32 32 > 34 ? TIDAK (tetap) = 32, 34 34 > 22 ? YA (tukar) = 22, 34 34 > 2 ? YA (tukar) = 2, 34 34 > 42 ? TIDAK (tetap) = 34, 42 42 > 75 ? TIDAK (tetap) = 42, 75 Hasil : 5, 25, 32, 22, 2, 34, 42, 75
  • 7. Bubble Sort Data sebelumnya : 5, 25, 32, 22, 2, 34, 42, 75 Langkah ke 3 : 5 > 25 ? TIDAK (tetap) = 5, 25 25 > 32 ? TIDAK (tetap) = 25, 32 32 > 22 ? YA (tukar) = 22, 32 32 > 2 ? YA (tukar) = 2, 32 32 > 34 ? TIDAK (tetap) = 32, 34 34 > 42 ? TIDAK (tetap) = 34, 42 42 > 75 ? TIDAK (tetap) = 42, 75 Hasil : 5, 25, 22, 2, 32, 34, 42, 75
  • 8. Bubble Sort Data sebelumnya : 5, 25, 22, 2, 32, 34, 42, 75 Langkah ke 4 : 5 > 25 ? TIDAK (tetap) = 5, 25 25 > 22 ? YA (tukar) = 22, 25 25 > 2 ? YA (tukar) = 2, 25 25 > 32 ? TIDAK (tetap) = 25, 32 32 > 34 ? TIDAK (tetap) = 32, 34 34 > 42 ? TIDAK (tetap) = 34, 42 42 > 75 ? TIDAK (tetap) = 42, 75 Hasil : 5, 22, 2, 25, 32, 34, 42, 75
  • 9. Bubble Sort Data sebelumnya : 5, 22, 2, 25, 32, 34, 42, 75 Langkah ke 5 : 5 > 22 ? TIDAK (tetap) = 5, 22 22 > 2 ? YA (tukar) = 2, 22 22 > 25 ? TIDAK (tetap) = 22, 25 25 > 32 ? TIDAK (tetap) = 25, 32 32 > 34 ? TIDAK (tetap) = 32, 34 34 > 42 ? TIDAK (tetap) = 34, 42 42 > 75 ? TIDAK (tetap) = 42, 75 Hasil : 5, 2, 22, 25, 32, 34, 42, 75
  • 10. Bubble Sort Data sebelumnya : 5, 2, 22, 25, 32, 34, 42, 75 Langkah ke 6 : 5 > 2 ? YA (tukar) = 2, 5 5 > 22 ? TIDAK (tetap) = 5, 22 22 > 25 ? TIDAK (tetap) = 22, 25 25 > 32 ? TIDAK (tetap) = 25, 32 32 > 34 ? TIDAK (tetap) = 32, 34 34 > 42 ? TIDAK (tetap) = 34, 42 42 > 75 ? TIDAK (tetap) = 42, 75 Hasil : 2, 5, 22, 25, 32, 34, 42, 75
  • 11. Bubble Sort Data Awal : 5, 34, 32, 25, 75, 42, 22, 2 Data Akhir : 2, 5, 22, 25, 32, 34, 42, 75
  • 12. #include <iostream.h> #include <conio.h> #include <iomanip.h> void main() { int data[8] = {5, 34, 32, 25, 75, 42, 22, 2}; int swap; cout<<"Data sebelum diurutkan : "<<endl; for(int i=0; i<8; i++) { cout<<setw(3)<<data[i]; } cout<<endl; for(int i=0; i<7; i++) { for(int j=0; j<7; j++) { if(data[j] > data[j+1]) { swap = data[j]; data[j] = data[j+1]; data[j+1] = swap; } } } cout<<"Data setelah diurutkan : "<<endl; for(int i=0; i<8; i++) { cout<<setw(3)<<data[i]; } getch(); }