#include "main.h" #include "selection.h" unsigned smallest_index(int* arr, unsigned size) { if (size == 0) return 0; unsigned min_idx = 0; for (unsigned i = 0; i < size; i++) if (arr[i] <= arr[min_idx]) min_idx = i; return min_idx; } void selection_sort(int* arr, unsigned size) { for (unsigned tail = 0; tail < size; tail++) { unsigned smallest = tail + smallest_index(&arr[tail], size - tail); swap(arr[tail], arr[smallest]); printf("tail %d: ", tail); print_arr(arr, size); } }