Tahapan-tahapan dalam bubble sort dalam melakukan proses sorting dengan membandingkan seluruh data dan melakukan proses pertukuran seperti gambar di bawah ini
Gambar di atas menunjukkan proses ketika algoritma bubble sort diimplementasikan.
Jika kita melihat Proses ke-3 sampai ke-5 data seharusnya tidak perlu di banding ulang, karena dengan proses seperti itu akan memakan waktu proses ketika di jalankan. Bayangkan jika data di atas jumlahnya ada ribuan bahkan jutaan. Maka berapa lama waktu yang akan dibutuhkan?
Tetapi tidak sampai disitu saja Algoritma Bubble sort ini masih bisa kita sederhanakan lagi agar data yang harusnya sudah terurut tidak perlu melakukan proses banding lagi. Dengan menggunakan variable boolean (true/false). Dengan menggunakan variable boolean (true/false) disini kita bisa mengefisienkan perulangan pada algoritma Bubble sort. Dengan cara seperti ini :
Maka, Hasil dari codingan diatas seperti ini
Dari proses di atas kita bisa melihat bahwa proses yang di jalankan dapat lebih efisien dari segi waktu karena di atas proses ke-4 dan ke-5 sudah menghilang. Walaupun proses ke-3 tidak ada melakukan swapping data (pertukaran data) yang seharusnya proses hanya sampai ke-2 tetapi proses ke-3 diperlukan untuk pengecekan terakhir memastikan bahwa seluruh data tidak ada swapping (pertukaran) lagi.
Jadi, penyederhanaan diatas dilakukan pengecekan perblock. Jika dalam satu block tidak melakukan swapping lagi artinya proses berikutnya dihentikan.
Itulah secara singkat penjelasan mengenai Proses algoritma bubble sort. Sekarang kita akan mencoba Sorting bubble sort jika memakai data dalam jumlah yang banyak yaitu 100 dan 1000 dengan menggunakan Auto Gen Random data bawaan JAVA(Penomoran Otomatis), disini kita akan membandingkan seberapa lama proses dijalankan ketika menggunakan tehnik bubble sort dengan satuan waktu nanosecond.
Percobaan Pertama Menggunakan 100 data :
Hasil
Waktu yang dibutuhkan untuk proses sorting di atas adalah 332.100 nanoSecond
Percobaan Kedua Menggunakan 1000 Data
Hasil
Jika kita liat hasil di atas waktu yang di jalankan selama 17.011.201 nanoSecond.
Dapat kita simpulkan bahwa dari perbandingan di atas bahwa semakin banyak jumlah data yang di masukkan maka waktu yang dibutuhkan juga akan semakin lama, lebih tepatnya tergantung pada spesifikasi dari komputer anda. Semakin baik spesifikasi komputer anda maka proses sorting yang dijalankan akan lebih cepat.
Itulah beberapa penjelasan mengenai proses Algoritma Bubble Sort dan beberapa perbandingan jumlah data, semoga dapat bermanfaat
Terima kasih.