zl程序教程

您现在的位置是:首页 >  后端

当前栏目

简单排序(排序过程)

排序 简单 过程
2023-09-14 09:06:55 时间

问题引入 

【问题描述】

实现冒泡排序、简单选择排序、直接插入排序。

【输入形式】

输入3组待排序序列。

【输出形式】

输出分别使用冒泡、选择、插入排序的每趟排序结果。

【样例输入】

5

7 3 5 0 -9

3

9 8 0

6

2 4 6 3 4 2

【样例输出】

insertSort:

3 7 5 0 -9

3 5 7 0 -9

0 3 5 7 -9

-9 0 3 5 7

selectSort:

0 8 9

0 8 9

bubbleSort:

2 4 3 4 2 6

2 3 4 2 4 6

2 3 2 4 4 6

2 2 3 4 4 6

【样例说明】

从样例可以看出,直接插入排序和选择排序排序趟数都是n-1,而冒泡排序是改进后的排序算法,排序趟数<=n-1。

每趟排序完成,调用printList输出当前结果。

注意:选择排序,每趟选择只做一次交换(而不是每次比较都做交换)

程序设计 

#include <stdio.h>
#include <stdlib.h>
#define MAX 1000
void printList(int list[], int n)
{
     int i;
     for(i=0; i<n; i+