Selection Sort

Finding the minimum element (considering ascending order) from unsorted part and putting it at the beginning. The algorithm maintains two subarrays in a given array.
1) The subarray which is already sorted.
2) Remaining subarray which is unsorted.

Best,Worst and Average Case Time Complexity: O(n²).

Auxiliary Space: O(1)


public class MyClass
public static void main(String args[])
int[] values = {5,4,3,1,2};
int n = values.length;
for(int i=0;i<n-1;i++)
int minindexx = i;
for(int j = i+1;j<n;j++)
minindexx = j;
int temp = values[minindexx];
values[minindexx] = values[i];
values[i] = temp;