- 16 Ara 2010
- 176
- 0
Basit haliyle birbirine sıralı olan verileri karşılaştırarak ilerleyen algoritmadır. Ardışık iki bloğu kontrol eder.
Aşama aşama bakmamız gerekirse
1.İlk iki sayı alınır.
2.Aldığımız iki sayı karşılaştırılır
3.Küçük olan dizinin sol kısmına yazılır
4.Büyük olan hafızada tutulur
5.Dizinin sonuna gelince işlem bitirilir
6.Dizinin sonuna gelinmemişse yeni bir sayı alınır.
7.Sonra karşılaştırılma kısmına geri dönülür.
Çalışma hızı O(n^2) dir algoritmada belli iyileştirilmeler yapılabilir. Sıralı dizi için döngünün başlamaması gibi,
Aşama aşama bakmamız gerekirse
1.İlk iki sayı alınır.
2.Aldığımız iki sayı karşılaştırılır
3.Küçük olan dizinin sol kısmına yazılır
4.Büyük olan hafızada tutulur
5.Dizinin sonuna gelince işlem bitirilir
6.Dizinin sonuna gelinmemişse yeni bir sayı alınır.
7.Sonra karşılaştırılma kısmına geri dönülür.
Kod:
int n = arr.length;
for (int i = 0; i < n-1; i++)
for (int j = 0; j < n-i-1; j++)
if (arr[j] > arr[j+1])
{
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
Çalışma hızı O(n^2) dir algoritmada belli iyileştirilmeler yapılabilir. Sıralı dizi için döngünün başlamaması gibi,
Son düzenleme: