c语言冒泡排序的四个方法
3、实现以下四种冒泡排序的方法:a)将最大(小)值逐一推送到尾部b)将最大(小)值逐一推送到头部我只会最简单的刚学习c语言...
3、实现以下四种冒泡排序的方法:
a)将最大(小)值逐一推送到尾部
b)将最大(小)值逐一推送到头部
我只会最简单的 刚学习c语言 展开
a)将最大(小)值逐一推送到尾部
b)将最大(小)值逐一推送到头部
我只会最简单的 刚学习c语言 展开
展开全部
#include <stdio.h>
// 将最大值逐一推送到尾部
void bubble_sort_1(int x[], int len)
{
int i, j, tmp;
for (i = len - 1; i > 0; --i)
for (j = 0; j < i; ++j) {
if (x[j] > x[j+1]) {
tmp = x[j];
x[j] = x[j+1];
x[j+1] = tmp;
}
}
}
// 将最小值逐一推送到尾部
void bubble_sort_2(int x[], int len)
{
int i, j, tmp;
for (i = len - 1; i > 0; --i)
for (j = 0; j < i; ++j) {
if (x[j] < x[j+1]) {
tmp = x[j];
x[j] = x[j+1];
x[j+1] = tmp;
}
}
}
// 将最大值逐一推送到头部
void bubble_sort_3(int x[], int len)
{
int i, j, tmp;
for (i = 0; i < len - 1; ++i)
for (j = len - 1; j > i; --j) {
if (x[j] > x[j-1]) {
tmp = x[j];
x[j] = x[j-1];
x[j-1] = tmp;
}
}
}
// 将最小值逐一推送到头部
void bubble_sort_4(int x[], int len)
{
int i, j, tmp;
for (i = 0; i < len - 1; ++i)
for (j = len - 1; j > i; --j) {
if (x[j] < x[j-1]) {
tmp = x[j];
x[j] = x[j-1];
x[j-1] = tmp;
}
}
}
int main()
{
int i, x[] = {3, 6, 1, 4, 8, 0, 9, 5, 2, 7};
int len = sizeof(x) / sizeof(x[0]);
// 调用不同的bubble
bubble_sort_4(x, len);
for (i = 0; i < len; ++i)
printf("%d ", x[i]);
printf("\n");
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询