快速排序算法的C语言实现

快速排序算法的C语言实现,第1张

概述快速排序算法的C语言实现

下面是内存溢出 jb51.cc 通过网络收集整理的代码片段。

内存溢出小编现在分享给大家,也给大家做个参考。

#include <stdlib.h>#include <stdio.h>static voID swap(voID *x,voID *y,size_t l) {   char *a = x,*b = y,c;   while(l--) {      c = *a;      *a++ = *b;      *b++ = c;   }}static voID sort(char *array,size_t size,int (*cmp)(voID*,voID*),int begin,int end) {   if (end > begin) {      voID *pivot = array + begin;      int l = begin + size;      int r = end;      while(l < r) {         if (cmp(array+l,pivot) <= 0) {            l += size;         } else {            r -= size;            swap(array+l,array+r,size);         }      }      l -= size;      swap(array+begin,array+l,size);      sort(array,size,cmp,begin,l);      sort(array,r,end);   }}voID qsort(voID *array,size_t nitems,voID*)) {   sort(array,(nitems-1)*size);}typedef int type;int type_cmp(voID *a,voID *b){ return (*(type*)a)-(*(type*)b); }main(){ /* simple test case for type=int */  int num_List[]={5,4,3,2,1};  int len=sizeof(num_List)/sizeof(type);  char *sep="";  int i;  qsort(num_List,len,sizeof(type),type_cmp);  printf("sorted_num_List={");  for(i=0; i<len; i++){    printf("%s%d",sep,num_List[i]);    sep=",";  }  printf("};\n");}

以上是内存溢出(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

总结

以上是内存溢出为你收集整理的快速排序算法的C语言实现全部内容,希望文章能够帮你解决快速排序算法的C语言实现所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1232526.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存