#5023. 双指针选择排序

双指针选择排序

Description

n个不同的数保存在数组a[1...n]。现在进行n-1轮操作。第1轮就是把a[1]a[n]当中最小的数交换到a[1]。第2轮就是把a[2]a[n]当中最大的数交换到a[n],第3轮就是把a[2]a[n-1]当中最小的数交换到a[2],4轮就是把a[3]a[n-1]当中最大的数交换到a[n-1]......按照这个规律,经过n-1轮选择交换后,a数组已经是从小都大排好顺序了。每一轮操作后,你都要输出a数组。

Input Format

第一行,一个整数n1<=n<=100

第二行,n个整数,每个整数范围[1,1000]

Output Format

n-1行,每行输出一次a数组。

5
3 5 4 2 1
1 5 4 2 3
1 3 4 2 5
1 2 4 3 5
1 2 3 4 5

Source

一维数组 双指针