Update Bubble Sort.cpp

About Bubble Sort, bubble sort's working principle, algorithm analysis, best-worst case, such as information has been added. A person entering this pull request can easily learn about bubble sort.
In addition, information about the swap process used in the algorithm is also included in the code how to work. To make this process is fully explained in the lower example is explained in the sample. In some places, design changes were made to make it look pleasing to the eye.
This commit is contained in:
mertkoca 2019-05-17 16:28:23 +03:00 committed by GitHub
parent ab60bdb062
commit 0b5dde0ebb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -31,7 +31,7 @@ int main()
if(numbers[j]>numbers[j+1]) if(numbers[j]>numbers[j+1])
{ {
swap_check=1; swap_check=1;
swap(numbers[j], numbers[j+1]); //swap yer değiştirme demektir. Yani j. sayi, j+1. sayıdan büyükse yer değiştir anlamındadır. swap(numbers[j], numbers[j+1]);// by changing swap location. I mean, j. If the number is greater than j + 1, then it means the location.
} }
} }
if(swap_check == 0) if(swap_check == 0)
@ -55,34 +55,33 @@ int main()
return 0; return 0;
} }
/* /*The working principle of the Bubble sort algorithm:
Bubble sort algoritmasının çalışma prensibi:
Bubble sort algoritmasının türkçesi kabarcık sıralama algoritmasıdır. Kabarcık denmesinin en önemli sebebi bu algoritmada en büyük sayının en sona atılmasıdır. Bubble sort algorithm is the bubble sorting algorithm. The most important reason for calling the bubble is that the largest number is thrown at the end of this algorithm.
Tüm mantığını bunun üzerinedir. This is all about the logic.
Her iterasyonda en büyük sayı sona atılır ve iterasyonlar tamamlandığında sıralama gerçekleşmiş olur. In each iteration, the largest number is expired and when iterations are completed, the sorting takes place.
Swap Ne Demektir? What is Swap?
Yazılımda Swap demek iki değişkenin yer değiştirmesi demektir. Swap in the software means that two variables are displaced.
Bu işlem için ek bir değişkene ihtiyaç duyulur. x = 5, y = 10 olsun. An additional variable is required for this operation. x = 5, y = 10.
Biz istiyoruz ki x = 10, y = 5 olsun. İşte bunu yapmak için en bir değişken oluştururuz. We want x = 10, y = 5. Here we create the most variable to do it.
int z; int z;
z = x; z = x;
x = y; x = y;
y = z; y = z;
Yukarıdaki işlem tipik bir yer değiştirme işlemidir. The above process is a typical displacement process.
x değerine yyi atayınca xin eski değeri kaybolur. When x assigns the value to x, the old value of x is lost.
Bu yüzden biz z diye bir değişken oluşturup ilk başka x değerini orada sakladık, en son olarak da yye atadık. That's why we created a variable z to create the first value of the value of x, and finally, we have assigned to y.
Bubble Sort Algoritma Analizi (Best Case Worst Case Avarage Case) En iyi Durum En Kötü Durum: Bubble Sort Algorithm Analysis (Best Case - Worst Case - Average Case)
Bubble Sort En Kötü Durum (Worst Case) Performansı O(n²) şeklindedir. Neden? Çünkü Big O Notasyonu yazımızdan hatırlarsanız içe döngülerde algoritma karmaşıklığı hesaplarken döngülerin çarpımını alıyorduk. Bubble Sort Worst Case Performance is O (n²). Why is that? Because if you remember Big O Notation, we were calculating the complexity of the algorithms in the nested loops.
n * (n 1) çarpımı üzerinden bize yine O(n²) performansı gelir. En kötü durumda döngünün tüm adımları gerçekleşecektir. The n * (n - 1) product gives us O (n²) performance. In the worst case all the steps of the cycle will occur.
Bubble Sort Ortalama Durum (Avarage Case) Performansı. Bubble Sort optimal bir algoritma değildir. Bubble Sort (Avarage Case) Performance. Bubble Sort is not an optimal algorithm.
ortalama durumda da O(n²) performansı alınmaktadır. in average, O (n²) performance is taken.
Bubble Sort En iyi Durum (Best Case) Performansı. O(n) şeklindedir. Bubble Sort Best Case Performance. O (n).
Ancak yukarıda paylaştığımız kodda en iyi durumu elde edemezsiniz. İyileştirilmiş bubble sort algoritması üzerinde bu durum gerçekleşir. Hemen aşağıda bulunmakta. However, you can't get the best status in the code we shared above. This happens on the optimized bubble sort algorithm. It's right down there.
*/ * /