Algoritma dan pemprograman
Bubble Sort adalah salah satu algoritma untuk
sorting data, atau kata lainnya mengurutkan data dari yang terbesar ke yang
terkecil atau sebaliknya (Ascending atau Descending).Algoritma Bubble Sort
adalah algoritma sorting paling sederhana. Kelebihan dari algoritma ini adalah
mudah dipahami dan yang paling simpel. Kekurangannya juga banyak sekali, salah
satunya ialah proses akan berhenti jika tidak adanya pertukaran dalam satu
iterasi. Sesuai dengan namanya, proses pengurutannya mirip seperti gelembung.
Terdapat proses pertukaran atau istilah kerennya swapping.
Kelebihan
Bubble Sort
• Metode Buble Sort merupakan metode yang paling simpel
• Metode Buble Sort mudah dipahami algoritmanya
Kelemahan Bubble Sort
Meskipun simpel metode Bubble sort merupakan metode pengurutan yang paling tidak efisien. Kelemahan buble sort adalah pada saat mengurutkan data yang sangat besar akan mengalami kelambatan luar biasa, atau dengan kata lain kinerja memburuk cukup signifikan ketika data yang diolah jika data cukup banyak. Kelemahan lain adalah jumlah pengulangan akan tetap sama jumlahnya walaupun data sesungguhnya sudah cukup terurut. Hal ini disebabkan setiap data dibandingkan dengan setiap data yang lain untuk menentukan posisinya.
• Metode Buble Sort merupakan metode yang paling simpel
• Metode Buble Sort mudah dipahami algoritmanya
Kelemahan Bubble Sort
Meskipun simpel metode Bubble sort merupakan metode pengurutan yang paling tidak efisien. Kelemahan buble sort adalah pada saat mengurutkan data yang sangat besar akan mengalami kelambatan luar biasa, atau dengan kata lain kinerja memburuk cukup signifikan ketika data yang diolah jika data cukup banyak. Kelemahan lain adalah jumlah pengulangan akan tetap sama jumlahnya walaupun data sesungguhnya sudah cukup terurut. Hal ini disebabkan setiap data dibandingkan dengan setiap data yang lain untuk menentukan posisinya.
contoh aplikasi penerapan dari algoritma Bubble Sort dengan C#.
Kira-kira tampilan kode programnya seperti di
bawah ini :
public static void Main(string[] args) {
Console.Write(“Masukkan banyak elemen array =
“);
int n = Convert.ToInt32(Console.ReadLine());
int[] array_sort = new int[n];
for (int i = 0; i < n; i++)
int n = Convert.ToInt32(Console.ReadLine());
int[] array_sort = new int[n];
for (int i = 0; i < n; i++)
{
Console.Write(“Elemen ke-” + (i + 1) + ” = “);
array_sort[i] = Convert.ToInt32(Console.ReadLine());
}
Console.Write(“Elemen ke-” + (i + 1) + ” = “);
array_sort[i] = Convert.ToInt32(Console.ReadLine());
}
for (int j = 1; j <= n – 1; j++){
for (int k = 0; k <= n – 2; k++) {
if (array_sort[k] < array_sort[k + 1]){
int temp = array_sort[k];
array_sort[k] = array_sort[k + 1];
array_sort[k + 1] = temp;
}
}
}
for (int k = 0; k <= n – 2; k++) {
if (array_sort[k] < array_sort[k + 1]){
int temp = array_sort[k];
array_sort[k] = array_sort[k + 1];
array_sort[k + 1] = temp;
}
}
}
Console.WriteLine(“”);
Console.WriteLine(“Diurutkan secara Descending”);
for (int i = 0; i < n; i++) {
Console.WriteLine(array_sort[i]);
}
Console.ReadKey(true);
Console.WriteLine(“Diurutkan secara Descending”);
for (int i = 0; i < n; i++) {
Console.WriteLine(array_sort[i]);
}
Console.ReadKey(true);
}
0 komentar:
Posting Komentar