欢迎来到天天文库
浏览记录
ID:8968152
大小:13.35 KB
页数:2页
时间:2018-04-13
《c语言求中位数递归算法》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、#include#includetypedefintElementType;ElementTypeMedian(ElementTypeS[],intN);ElementTypeFindKthLargest(ElementTypeS[],intK,intleft,intright,ElementTypet[]);intmain(){inta[]={6,5,9,8,2,1,7,3,4};printf("中位数是:%d",Median(a,9));}Elemen
2、tTypeMedian(ElementTypeS[],intN){ElementType*p,m;p=(ElementType*)malloc(sizeof(ElementType)*N);m=FindKthLargest(S,(N+1)/2,0,N-1,p);free(p);returnm;}ElementTypeFindKthLargest(ElementTypeS[],intK,intleft,intright,ElementTypet[]){inti,Large=left,Small=ri
3、ght;ElementTypee;e=S[left];for(i=left;i<=right;i++)if(S[i]>=e)t[Large++]=S[i];elset[Small--]=S[i];if(Small==right&&right>left){e=S[right];S[right]=S[left];S[left]=e;Large=left;for(i=left;i<=right;i++)if(S[i]=e)t[Large++]=S[i];elset[Small--]=S[i];}for(
4、i=left;i<=right;i++)S[i]=t[i];if(K
此文档下载收益归作者所有