This file contains GKlib's various sorting routines. More...
#include <GKlib.h>
Go to the source code of this file.
Macros | |
#define | char_gt(a, b) ((*a) > (*b)) |
#define | char_lt(a, b) ((*a) < (*b)) |
#define | ckey_gt(a, b) ((a)->key > (b)->key) |
#define | ckey_lt(a, b) ((a)->key < (b)->key) |
#define | dkey_gt(a, b) ((a)->key > (b)->key) |
#define | dkey_lt(a, b) ((a)->key < (b)->key) |
#define | double_gt(a, b) ((*a) > (*b)) |
#define | double_lt(a, b) ((*a) < (*b)) |
#define | fkey_gt(a, b) ((a)->key > (b)->key) |
#define | fkey_lt(a, b) ((a)->key < (b)->key) |
#define | float_gt(a, b) ((*a) > (*b)) |
#define | float_lt(a, b) ((*a) < (*b)) |
#define | idx_gt(a, b) ((*a) > (*b)) |
#define | idx_lt(a, b) ((*a) < (*b)) |
#define | idxkey_gt(a, b) ((a)->key > (b)->key) |
#define | idxkey_lt(a, b) ((a)->key < (b)->key) |
#define | ikey_gt(a, b) ((a)->key > (b)->key) |
#define | ikey_gt(a, b) ((a)->key > (b)->key) |
#define | ikey_gt(a, b) ((a)->key > (b)->key) |
#define | ikey_lt(a, b) ((a)->key < (b)->key) |
#define | ikey_lt(a, b) ((a)->key < (b)->key) |
#define | ikey_lt(a, b) ((a)->key < (b)->key) |
#define | int_gt(a, b) ((*a) > (*b)) |
#define | int_lt(a, b) ((*a) < (*b)) |
#define | skey_gt(a, b) (strcmp((a)->key, (b)->key) > 0) |
#define | skey_lt(a, b) (strcmp((a)->key, (b)->key) < 0) |
#define | zkey_gt(a, b) ((a)->key > (b)->key) |
#define | zkey_lt(a, b) ((a)->key < (b)->key) |
This file contains GKlib's various sorting routines.
These routines are implemented using the GKSORT macro that is defined in gk_qsort.h and is based on GNU's GLIBC qsort() implementation.
Additional sorting routines can be created using the same way that these routines where defined.
$Id: sort.c 10796 2011-09-23 21:33:09Z karypis $
Definition in file sort.c.
void gk_ckvsortd | ( | size_t | n, |
gk_ckv_t * | base | ||
) |
void gk_ckvsorti | ( | size_t | n, |
gk_ckv_t * | base | ||
) |
void gk_csortd | ( | size_t | n, |
char * | base | ||
) |
void gk_csorti | ( | size_t | n, |
char * | base | ||
) |
void gk_dkvsortd | ( | size_t | n, |
gk_dkv_t * | base | ||
) |
void gk_dkvsorti | ( | size_t | n, |
gk_dkv_t * | base | ||
) |
void gk_dsortd | ( | size_t | n, |
double * | base | ||
) |
void gk_dsorti | ( | size_t | n, |
double * | base | ||
) |
void gk_fkvsortd | ( | size_t | n, |
gk_fkv_t * | base | ||
) |
void gk_fkvsorti | ( | size_t | n, |
gk_fkv_t * | base | ||
) |
void gk_fsortd | ( | size_t | n, |
float * | base | ||
) |
void gk_fsorti | ( | size_t | n, |
float * | base | ||
) |
void gk_i32kvsortd | ( | size_t | n, |
gk_i32kv_t * | base | ||
) |
void gk_i32kvsorti | ( | size_t | n, |
gk_i32kv_t * | base | ||
) |
void gk_i64kvsortd | ( | size_t | n, |
gk_i64kv_t * | base | ||
) |
void gk_i64kvsorti | ( | size_t | n, |
gk_i64kv_t * | base | ||
) |
void gk_idxkvsortd | ( | size_t | n, |
gk_idxkv_t * | base | ||
) |
void gk_idxkvsorti | ( | size_t | n, |
gk_idxkv_t * | base | ||
) |
void gk_ikvsortd | ( | size_t | n, |
gk_ikv_t * | base | ||
) |
void gk_ikvsorti | ( | size_t | n, |
gk_ikv_t * | base | ||
) |
void gk_skvsortd | ( | size_t | n, |
gk_skv_t * | base | ||
) |
void gk_skvsorti | ( | size_t | n, |
gk_skv_t * | base | ||
) |
void gk_zkvsortd | ( | size_t | n, |
gk_zkv_t * | base | ||
) |