c中沒有自帶的sort函式emm
不過有自帶的qsort函式
(其實用法都差不多(只是我經常以為c中有sort
標頭檔案要用
1 #include
一定要重新把指標指向的值賦值給乙個node型別,不然比較不了
1struct
nodea[n];45
int cmp(const
void *x,const
void *y)
1011 qsort(a+1,n,sizeof(a[1]),cmp);//
呼叫 排序a[1]~a[1+n]
這裡貼乙個**,實現的功能是給定乙個陣列(陣列中每個數不一樣),然後輸入一些數,問你這些數在陣列中的位置(從0開始編號)
(其實是我看錯題的產物(寫都寫了(就是實現一下離散化而已,當個小例子看吧
1 #include 2 #include3 #include 4
5#define n 2*10001067
struct
nodea[n];
10int
b[n],q[n],ans[n];
1112
int cmp(const
void *x,const
void *y)
1718
intmain()
1929 scanf("
%d",&m);
30for(int i=1;i<=m;i++)
3137 qsort(a+1,n+m,sizeof(a[1
]),cmp);
38int now=0,p=0;39
for(int i=1;i<=n+m;i++)
4045
for(int i=1;i<=n+m;i++)
4649
for(int i=1;i<=m;i++)
50 printf("
%d\n
",ans[i]-1
);51
return0;
52 }
還寫了乙個純排序的**,非結構體的。手寫快排,或者用系統自帶qsort
1 #include2 #include3 #include4
5int n,a[100010];6
void quicksort(int a,int l,intr)7
17 a[i]=key;
18 quicksort(a,l,i-1
);19 quicksort(a,i+1
,r);20}
2122
23int cmp(const
void *x,const
void *y)
2930
intmain()
31
posted @
2018-11-20 11:15
攔路雨偏似雪花 閱讀(
...)
編輯收藏
c語言中使用自帶的qsort(結構體排序) 快排
c中沒有自帶的sort函式emm 不過有自帶的qsort函式 其實用法都差不多 只是我經常以為c中有sort 標頭檔案要用 1 include 一定要重新把指標指向的值賦值給乙個node型別,不然比較不了 1 struct nodea n 45 int cmp const void x,const ...
C語言中使用系統自帶的快排函式
題目 1015.德才論 25 宋代史學家司馬光在 資治通鑑 中有一段著名的 德才論 是故才德全盡謂之聖人,才德兼亡謂之愚人,德勝才謂之君子,才勝德謂之小人。凡取人之術,苟不得聖人,君子而與之,與其得小人,不若得愚人。現給出一批考生的德才分數,請根據司馬光的理論給出錄取排名。輸入格式 輸入第1行給出3...
c語言中的qsort方法的使用
c語言類庫中自帶了快速排序演算法qsort。用 法 void qsort void base,int nelem,int width,int fcmp const void const void 舉例說明 1 一維的陣列排序 int a 1000 qsort a,1000,sizeof int co...