3.1 Selection Sort
3.1 Selection Sort
3.1 Selection Sort
Provided with a random integer array/list(ARR) of size N, you have been required to
sort this array using 'Selection Sort'.
Note:
Change in the input array/list itself. You don't need to return or print the
elements.
Input format :
The first line contains an Integer 't' which denotes the number of test cases or
queries to be run. Then the test cases follow.
First line of each test case or query contains an integer 'N' representing the size
of the array/list.
Second line contains 'N' single space separated integers representing the elements
in the array/list.
Output format :
For each test case, print the elements of the array/list in sorted order separated
by a single space.
Constraints :
1 <= t <= 10^2
0 <= N <= 10^3
Sample Input 1:
1
7
2 13 4 1 3 6 28
Sample Output 1:
1 2 3 4 6 13 28
Sample Input 2:
2
5
9 3 6 2 0
4
4 3 2 1
Sample Output 2:
0 2 3 6 9
1 2 3 4
Code:
C++:
Python:
def selectionSort(arr, n) :
for i in range(n) :
mini = arr[i]
minIndex = i
for j in range(i, n) :
if mini > arr[j] :
mini = arr[j]
minIndex = j
tmp = arr[i]
arr[i] = arr[minIndex]
arr[minIndex] = tmp;
def takeInput() :
n = int(stdin.readline().strip())
if n == 0 :
return list(), 0
def printList(arr, n) :
for i in range(n) :
print(arr[i], end = " ")
print()
#main
t = int(stdin.readline().strip())
while t > 0 :
arr, n = takeInput()
selectionSort(arr, n)
printList(arr, n)
t-= 1
Java: