7-1 选择法排序之第k趟 (10 分)
本题要求使用选择法排序,将给定的n个整数从小到大进行排序,输出第k趟(k从0开始)排序后的结果。
选择排序的算法步骤如下:
第0步:在未排序的n个数(a[0]〜 a[n−1])中找到最小数,将它与 a[0]交换;
第1步:在剩下未排序的n−1个数(a[1] 〜 a[n−1])中找到最小数,将它与 a[1] 交换;
……
第k步:在剩下未排序的n−k个数(a[k] 〜 a[n-1])中找到最小数,将它与 a[k] 交换;
……
第n−2步:在剩下未排序的2个数(a[n−2] 〜a[n−1])中找到最小数,将它与 a[n−2]交换。
输入格式:
输入第一行给出一个不超过10的正整数n和一个不超过n-1的正整数k。第二行给出n个整数,其间以空格分隔。
输出格式:
在一行中输出排序过程中第k步(k从0开始)的中间结果,即第k步后a[0]〜 a[n−1]的值,相邻数字间有一个空格,行末不得有多余空格。
输入样例
4 1
5 1 7 2
输出样例
1 2 7 5
Solution
#include <stdio.h>
void change(int a[

这篇博客介绍了如何使用C语言实现选择法排序,并详细解释了第K趟排序的过程。通过给出的输入输出格式,展示了在排序过程中如何找到每趟的最小元素并进行交换,以达到逐步排序的效果。内容包括对选择排序算法的步骤说明,以及如何处理输入样例和输出样例。
最低0.47元/天 解锁文章
1830

被折叠的 条评论
为什么被折叠?



