已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 20:03:36
![已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果](/uploads/image/z/2593440-0-0.jpg?t=%E5%B7%B2%E7%9F%A5%E5%BA%8F%E5%88%97%EF%BC%8825%2C16%2C32%2C18%2C20%2C36%2C12%EF%BC%89%E8%AF%B7%E7%BB%99%E5%87%BA%E9%87%87%E7%94%A8%E5%86%92%E6%B3%A1%E6%8E%92%E5%BA%8F%E5%AF%B9%E8%AF%A5%E5%BA%8F%E5%88%97%E5%81%9A%E5%8D%87%E5%BA%8F%E6%8E%92%E5%BA%8F%E6%97%B6%E7%9A%84%E6%AF%8F%E4%B8%80%E8%B6%9F%E7%BB%93%E6%9E%9C)
已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果
已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果
已知序列(25,16,32,18,20,36,12)请给出采用冒泡排序对该序列做升序排序时的每一趟结果
#include
#define N (sizeof(a) / sizeof(*a))
void display(int a[],int n);
int main() {
\x05int a[] = {25,16,32,18,20,36,12};
\x05int i,j;
\x05printf("original:\n");
\x05display(a,N);
\x05printf("sorted:\n");
\x05for (i = 0; i + 1 < N; ++i) {
\x05\x05for (j = 0; j + i + 1 < N; ++j) {
\x05\x05\x05if (a[j + 1] < a[j]) {
\x05\x05\x05\x05int t = a[j];
\x05\x05\x05\x05a[j] = a[j + 1];
\x05\x05\x05\x05a[j + 1] = t;
\x05\x05\x05}
\x05\x05}
\x05\x05display(a,N);
\x05}
\x05system("pause");
\x05return 0;
}
void display(int a[],int n) {
\x05int i;
\x05for (i = 0; i < n; ++i) {
\x05\x05printf("%4d",a[i]);
\x05}
\x05printf("\n");
}