分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!
函式原型:
void qsort(void *base,size_t num,size_t width, int (__cdecl *compare )(const void *, const void *) );
第乙個是陣列位址,第二是陣列大小,第三個是陣列中每個元素的位元組數,最後乙個是個函式指標,表示如何比較陣列中的元素。
標頭檔案 #include
下面分別就int等整數資料,double等浮點資料,結構體和類,按指定方式這四種情況進行講解。
例項1 對int等整數資料進行排序
int
cmp(const
void *x, const
void *y)
qsort(a, maxn, sizeof(a[0]), cmp);
maxn為陣列大小,下同
例項2 對double等浮點數進行排序
int
cmpdouble
(const
void *x, const
void *y)
qsort(a, n, sizeof(a[0]), cmpdouble);
例項3 對結構體,類等複雜資料進行排序
如
struct
student;
先對年齡排序,年齡相同再按姓名排序。
int
cmpstudent
(const
void *x, const
void *y)
qsort(a, n, sizeof(a[0]), cmpstudent);
例項4 按指定方式進行排序。
如對只有大小寫字母的字串"aajkukdyubcdwyz"進行排序,要求大寫字母在前,小寫字母在後。
int
cmp1
(const
void *x, const
void *y)
intmain
()
給我老師的人工智慧教程打call!
使用VC庫函式中的快速排序函式
函式原型 void qsort void base,size t num,size t width,int cdecl compare const void const void 第乙個是陣列位址,第二是陣列大小,第三個是陣列中每個元素的位元組數,最後乙個是個函式指標,表示如何比較陣列中的元素。標頭...
使用VC庫函式中的快速排序函式
下面講下vc中庫函式qsort 的用法 函式原型 void qsort void base,size t num,size t width,int cdecl compare const void const void 第乙個是陣列位址,第二是陣列大小,第三個是陣列中每個元素的位元組數,最後乙個是個...
使用VC庫函式中的快速排序函式
函式原型 void qsort void base,size t num,size t width,int cdecl compare const void const void 第乙個是陣列位址,第二是陣列大小,第三個是陣列中每個元素的位元組數,最後乙個是個函式指標,表示如何比較陣列中的元素。標頭...