U
Umutmeister
Ziyaretçi
Kabarcık Sıralama, yalın bir sıralama algoritmasıdır. Döngü her geçişinde iki elemanı birbiriyle karşılaştırır, karşılaştırılan elemanların arasındaki büyüklük kontrol edilir. Eğer mevcut eleman kendisinden bir sonraki elemandan büyükse yerleri değiştirilir, değilse değiştirilmez. Yalnız bu şekilde yapıldığında dizi artık sıralı olsa bile algoritma bilmeyeceği için geçiş yapmaya devam edecektir, bu da gereksiz işlem yapıldığından dolayı boş boşuna sistemi meşgul edecektir.
İlk Geçiş
İlk Geçiş
- ( 5 7 3 8 2 9 ) -> ( 5 7 3 8 2 9 )
- ( 5 7 3 8 2 9 ) -> ( 5 3 7 8 2 9 ) 7 ile 3'ün yerlerini değiştir.
- ( 5 3 7 8 2 9 ) -> ( 5 3 7 8 2 9 )
- ( 5 3 7 8 2 9 ) -> ( 5 3 7 2 8 9 ) 8 ile 2'nin yerlerini değiştir.
- ( 5 3 7 2 8 9 ) -> ( 5 3 7 2 8 9 )
- ( 5 3 7 2 8 9 ) -> ( 3 5 7 2 8 9 ) 5 ile 3'ün yerlerini değiştir.
- ( 3 5 7 2 8 9 ) -> ( 3 5 7 2 8 9 )
- ( 3 5 7 2 8 9 ) -> ( 3 5 2 7 8 9 ) 7 ile 2'nin yerlerini değiştir.
- ( 3 5 2 7 8 9 ) -> ( 3 5 2 7 8 9 )
- ( 3 5 2 7 8 9 ) -> ( 3 5 2 7 8 9 )
- ( 3 5 2 7 8 9 ) -> ( 3 5 2 7 8 9 )
- ( 3 5 2 7 8 9 ) -> ( 3 2 5 7 8 9 ) 5 ile 2'nin yerlerini değiştir.
- ( 3 2 5 7 8 9 ) -> ( 3 2 5 7 8 9 )
- ( 3 2 5 7 8 9 ) -> ( 3 2 5 7 8 9 )
- ( 3 2 5 7 8 9 ) -> ( 3 2 5 7 8 9 )
- ( 3 2 5 7 8 9 ) -> ( 2 3 5 7 8 9 ) 3 ile 2'nin yerlerini değiştir.
- ( 2 3 5 7 8 9 ) -> ( 2 3 5 7 8 9 )
- ( 2 3 5 7 8 9 ) -> ( 2 3 5 7 8 9 )
- ( 2 3 5 7 8 9 ) -> ( 2 3 5 7 8 9 )
- ( 2 3 5 7 8 9 ) -> ( 2 3 5 7 8 9 )
PHP:
<?php
$Dizi = array(5, 7, 3, 8, 2, 9);
$Gecici = 0;
for($Dongu = 0; $Dongu < count($Dizi); $Dongu++)
{
for($Sirala = 0; $Sirala < count($Dizi) - 1; $Sirala++)
{
if($Dizi[$Sirala] > $Dizi[$Sirala + 1])
{
$Gecici = $Dizi[$Sirala + 1];
$Dizi[$Sirala + 1] = $Dizi[$Sirala];
$Dizi[$Sirala] = $Gecici;
}
}
}
foreach($Dizi as $Sayilar) echo $Sayilar." ";
?>