Zoradenie 1R poľa
V programovaní sa veľmi často stretávame s potrebou usporiadnania / zoradzovania prvkov. Môže ísť o prvky ako sú čísla, písmena alebo komplexné údajové štruktúry. Existuje množstvo metód a algoritmov. Na tomto predmete si ukážeme najzákladnejší algoritmus bublinkového triedenia a bežne využívaný algoritmus quck sort.
Bublinkové triedenie - bubble sort
Pracuje opakovaným prechodom cez zoznam, ktorý má byť utriedený porovnávajúc vždy dva prvky. Ak prvky nie sú v správnom poradí, zamení ich. Porovnávanie prvkov v zozname trvá, pokiaľ sú potrebné výmeny, teda pokiaľ nie je zoznam usporiadaný. Algoritmus dostal názov vďaka tomu, že menšie prvky sa „prebublinkujú“ na začiatok zoznamu.
void bubble_sort(int numbers[], const int size) { for(int j = size-1; j > 0; j--) for(int i = 0; i < j; i++) { if(numbers[i+1] < numbers[i]) { int tmp = numbers[i+1]; numbers[i+1] = numbers[i]; numbers[i] = tmp; } } } |
Vyhľadávanie v 1R poliach
Rovnako ako pre zoradenie aj pre vyhľadávanie existuje mnoho algoritmov. Najzákladnejším je lineárne vyhľadávanie a pokročilejším zasa binárne vyhľadávanie.