#include <stdio.h>
void print_array(int *parray, int len)
{
int i = 0;
for(i = 0; i<len; i++)
{
printf("%d ", parray[i]);
}
printf("\n");
}
/*
冒泡排序:
*/
int bubble_sort(int *parray, int len)
{
int i = 0;
int j = 0;
int tmp = 0;
if (parray == NULL) return -1;
for(i = 0; i<len; i++)
{
for(j = 0; j<len -i -1; j++)
{
if (parray[j] > parray[j+1])
{
tmp = parray[j];
parray[j] = parray[j+1];
parray[j+1] = tmp;
}
}
}
return 0;
}
int quik_sort(int *parray, int len)
{
}
//选择排序
int select_sort(int *parray, int len)
{
int i = 0;
int j = 0;
int mindex = 0;
int tmp = 0;
for(i = 0; i<len; i++)
{
mindex = i;
for(j = i+1; j<len; j++)
{
if (parray[mindex] > parray[j])
{
mindex = j;
}
}
//不相等,交换
if (mindex != i)
{
tmp = parray[i];
parray[i] = parray[mindex];
parray[mindex] = tmp;
}
}
return 0;
}
int insert_sort(int *parray, int len)
{
int i = 0;
int j = 0;
int current = 0;
int pre = 0;
for(i = 1; i<len; i++)
{
pre = i-1;
current = parray[i];
while(pre >= 0 && parray[pre] > current)
{
parray[pre+1] = parray[pre];
pre--;
}
parray[pre+1] = current;
}
}
int main()
{
int array[10] = {3,6,9,2,8,5,4,1,0,7};
//bubble_sort(array, 10);
//select_sort(array, 10);
insert_sort(array, 10);
print_array(array, 10);
return 0;
}
四大排序算法
排序算法实现:冒泡、选择、插入排序
最新推荐文章于 2025-07-24 19:33:05 发布
本文展示了三种基本排序算法的C语言实现,包括冒泡排序、选择排序和插入排序。通过示例代码,读者可以理解这些排序算法的工作原理,并可在实际编程中应用。
1895

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



