2 - https://www.geeksforgeeks.org/bubble-sort/ buradan hem kabarcık algoritmasının(bubble-sort) mantığına hem de bir çok dil de yazımını bulabilirsin.
3 - https://www.geeksforgeeks.org/selection-sort/ aynı şekilde seçme algoritması (selection-sort) buradan ulaşabilirsin.
2,3 için karşılaştırma ve yer değiştirme için algoritmanın kodları arasında sayaçlar tutabilirsin
Örnek:
int karsilastirma = 0;
int degistirme = 0;
for (int j = i+1; j < n; j++)
karsilastirma++;
if (arr[j] < arr[min_idx]) {
min_idx = j;
degistirme++;
}
4 - anladığım kadarıyla teorik olarak bu karşılaştırma sayısı bulunuyor. Hocanız derste, slaytlarda bunun formülünü vermiş olmalı diye düşünüyorum. Oradan hesapladığın ile bizim "int karsilastirma" değerini karşılaştıracaksın.