#include <iostream>
#include <vector>

void swap(std::vector<int>& array, int i, int j) {
    int temp = array[i];
    array[i] = array[j];
    array[j] = temp;
}
int index_of_min(const std::vector<int>& array, int start_index) {
    int min_value = array[start_index];
    int min_index = start_index;
    for (int i = min_index + 1; i < array.size(); i++) {
        if (array[i] < min_value) {
            min_value = array[i];
            min_index = i;
        }
    }
    return min_index;
}
void select_sort(std::vector<int>& array) {
    for (int i = 0; i < array.size(); i++) {
        int j = index_of_min(array, i);
        swap(array, i, j);
    }
}
void print_array(const std::vector<int>& array) {
    for (int i = 0; i < array.size(); i++) {
        std::cout << array[i] << " ";
    }
    std::cout << std::endl;
}
int main() {
    std::vector<int> array {4,2,5,3,1};  
    print_array(array);
    select_sort(array);
    print_array(array);    
    return 0;
}

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: