-->
当前位置:首页 > 题库

编程题:选择排序

Luz4年前 (2022-05-24)题库562
现请参照如下示意图,实现选择排序:
![selectionSort.png](~/18e02c73-c6e4-4663-a099-c0fbf09b1569.png)
### 输入格式:
一组由空格间隔的数字

### 输出格式:
第一行为一组由空格间隔的数字,从左至右已经按从小到大的顺序排好;
第二行为排列过程中进行的交换次数

### 输入样例:
in
7 3 8 1 5


### 输出样例:
out
1 3 5 7 8
5







答案:若无答案欢迎评论


def selectionSort(arr):
count = 0
for i in range(len(arr)):
pMin = i
for j in range(i+1, len(arr)):
if arr[pMin] > arr[j]:
pMin = j
if i != pMin:
arr[i], arr[pMin] = arr[pMin], arr[i]
count += 1
print(*arr)
print(count)

def main():
arr = input().split() # make a list
selectionSort(arr)

if __name__ == '__main__':
main()