c语言中的排序算法?
6个回答
展开全部
快速排序,冒泡排序,选择排序,归并排序,堆排序,桶排序。。。。。。
举例两个。。。选择排序:
for(int i = 1 ; i < n ; i++)
for(int j = i + 1 ; j <= n ; j++)
if(a[i] < a[j]) //要想反序就把小于号改成大于号
swap(a[i], a[j]);
快速排序,只能用函数了。。。:
void qsort(int a[], int p, int q)
{
int x = p - 1;
for(int i = p ; i < q ; i++)
if(a[i] > a[q]) //反序和选择排序一样
swap(a[++x], a[i]);
swap(a[++x], a[q]);
if(x - 1 > p)
qsort(a, p, x - 1);
if(x + 1 > q)
qsort(a, x + 1, q);
}
举例两个。。。选择排序:
for(int i = 1 ; i < n ; i++)
for(int j = i + 1 ; j <= n ; j++)
if(a[i] < a[j]) //要想反序就把小于号改成大于号
swap(a[i], a[j]);
快速排序,只能用函数了。。。:
void qsort(int a[], int p, int q)
{
int x = p - 1;
for(int i = p ; i < q ; i++)
if(a[i] > a[q]) //反序和选择排序一样
swap(a[++x], a[i]);
swap(a[++x], a[q]);
if(x - 1 > p)
qsort(a, p, x - 1);
if(x + 1 > q)
qsort(a, x + 1, q);
}
展开全部
选择,冒泡,快排,堆排,基数,计数,二叉树,插入,归并,希尔排序,等等。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
algorithm里面的sort
。。。
#include<algorithm>
后直接sort(a+1,a+n+1).
。。。
#include<algorithm>
后直接sort(a+1,a+n+1).
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-04-28
展开全部
冒泡,2分,快速...
可加Q群:219578323
可加Q群:219578323
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询