Kamis, 26 April 2012

Algoritma dan Pemprograman (Bubble Sort)



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.
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++)
{
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;
}
}
}
Console.WriteLine(“”);
Console.WriteLine(“Diurutkan secara Descending”);
for (int i = 0; i < n; i++)            {
Console.WriteLine(array_sort[i]);
}
Console.ReadKey(true);
}

0 komentar:

Posting Komentar