for (int i = index + 1; i < n; i++) { if (arr[i] < arr[minIndex]) minIndex = i; } int temp = arr[minIndex]; arr[minIndex] = arr[index]; arr[index] = temp; selectionSort(arr, n, index + 1); } int main() { int arr[] = {64, 25, 12, 22, 11}; int n = sizeof(arr) / sizeof(arr[0]);
selectionSort(arr, n, 0);
printf("Sorted array: \n");
for (int i = 0; i < n; i++) printf("%d ", arr[i]); printf("\n");
return 0; }
Pseudo Code:
Procedure selectionSort(arr[], n, index)
Step 1 – if index >= n - 1 return Step 2 – minIndex = index Step 3 – for i = index + 1 to n - 1 if arr[i] < arr[minIndex] minIndex = i Step 4 – swap(arr[minIndex],arr[index]) Step 5 - selectionSort(arr, n, index + 1) Output: