diff options
Diffstat (limited to 'src/sort.h')
| -rw-r--r-- | src/sort.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/sort.h b/src/sort.h new file mode 100644 index 0000000..1b54164 --- /dev/null +++ b/src/sort.h @@ -0,0 +1,20 @@ +#include "lua.h" +#include "i_util.h" +#include "i_common.h" + +//comparison sorts +int l_quicksort(lua_State*); //[double+int] -> arr[N] (greatest -> least) +int l_mergesort(lua_State*); //[double+int] -> arr[N] (greatest -> least) +int l_shellsort(lua_State*); //[double+int] -> arr[N] (greatest -> least) +int l_bubblesort(lua_State*); //[double+int] -> arr[N] (greatest -> least) +int l_heapsort(lua_State*); //[double+int] -> arr[N] (greatest -> least) + +//non-comparison sorts + //good for large arrays filled with small values +int l_countingsort(lua_State*); //[int] (arr[N] >= 0) -> arr[N] (least -> greatest) + +//esoteric sorts +int l_miraclesort(lua_State*); //[double+int] -> arr[-∞<=N<=∞] (greatest -> least) +int l_stalinsort(lua_State*); //[double+int] -> arr[?<=N] (greatest -> least) +int l_slowsort(lua_State*); //[double+int] -> arr[N] (greatest -> least) +int l_bogosort(lua_State*); //[double+int] -> arr[N] (greatest -> least) |
