多种排序 方法 c/c++

其他具体情况点击

?????????????????????????????????????????
C语言“stdlib.h” 中的 qsort 函数的简介和用法(结构中排序可能C语言会出现语法错误,可在C++中使用)
sort()函数与qsort()函数用法
c++的sort详解
插入排序、选择排序、冒泡排序、快速排序、堆排序、归并排序、希尔排序、二叉树排序、计数排序、桶排序、基数排序。
?????????????????????????????????????????
  • 下面是常用的“stdlib.h” 中的 qsort 函数部分用法:
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int charsort1(const void *a,const void *b)//小到大排序 
{
 return *(char*)a-*(char*)b;
}/*
int charsort2(const void *a,const void *b)//大到小排序 
{
 return *(char*)b-*(char*)a;
}*/
int intsort1(const void *a,const void *b)//小到大排序 
{
 return *(int*)a-*(int*)b;
}/*
int intsort2(const void *a,const void *b)//大到小排序 
{
 return *(int*)b-*(int*)a;
}*/
int main(void)
{
  int i;
  char str[]="abfcd5652";
  int a[]={8,5,6,69,2,3,5,52,6,2};
    /*输出原字符串*/
    printf("输出 str 原字符串:\n");
    for(i=0;str[i]!='\0';i++)
     printf("%c ",str[i]);
    printf("\n");
    /*输出现字符串*/ 
  qsort(str,strlen(str),sizeof(str[0]),charsort1);//排序str[] 
    printf("输出 str 现字符串:\n");
    for(i=0;str[i]!='\0';i++)
     printf("%c ",str[i]);
    printf("\n\n"); 
  
    /*输出原数组*/
  int n=sizeof(a)/sizeof(a[0]);
    printf("输出 a 原字符串:\n");
    for(i=0;i<n;i++)
     printf("%d ",a[i]);
    printf("\n");
    /*输出现数组*/ 
  qsort(a,n,sizeof(a[0]),intsort1);//排序a[] 
    printf("输出 a 现字符串:\n");
    for(i=0;i<n;i++)
     printf("%d ",a[i]);
    printf("\n");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流星蝴蝶没有剑

篮球弹弹弹

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值