00001
00010 #ifndef DKUTIL_C_SORT_H
00011 #define DKUTIL_C_SORT_H
00012
00013 #include "dkcOSIndependent.h"
00014 #include "dkcBlockSort.h"
00015
00016 typedef DKC_COMPARE_TYPE DKC_SORT_COMPARE_TYPE;
00017
00018
00022 DKC_EXTERN void WINAPI dkcShellSort( void *base,size_t num,size_t width,DKC_SORT_COMPARE_TYPE compare);
00023
00027 DKC_EXTERN void WINAPI dkcCombSort( void *base,size_t num,size_t width,DKC_SORT_COMPARE_TYPE compare);
00028
00032 DKC_EXTERN void WINAPI dkcBubbleSort( void *base,size_t num,size_t width,DKC_SORT_COMPARE_TYPE compare);
00033
00038 DKC_EXTERN void WINAPI dkcBitonicSort( void *base,size_t num,size_t width,DKC_SORT_COMPARE_TYPE compare);
00039
00044 DKC_EXTERN void WINAPI dkcQuickSort( void *base,size_t num,size_t width,DKC_SORT_COMPARE_TYPE compare);
00050 DKC_EXTERN void WINAPI dkcMultiPartitionSort( void *base,size_t num,size_t width,DKC_SORT_COMPARE_TYPE compare);
00051
00052
00053
00054
00066
00067
00068 DKC_EXTERN int WINAPI dkcDistCountSortInt(size_t num, const int *src, int *dest,int Min_,int Max_);
00070 DKC_EXTERN int WINAPI dkcDistCountSortShort(size_t num, const short *src, short *dest,short Min_,short Max_);
00072 DKC_EXTERN int WINAPI dkcDistCountSortChar(size_t num, const char *src, char *dest,char Min_,char Max_);
00073
00074
00075
00076 #if !defined( DKUTIL_C_SORT_C ) && defined(USE_DKC_INDEPENDENT_INCLUDE)
00077 # include "dkcSort.c"
00078 #endif
00079
00080 #endif //end of include once