{"id":13730610,"url":"https://github.com/bitshifter/radixsort","last_synced_at":"2025-04-14T02:25:03.698Z","repository":{"id":20751345,"uuid":"24035837","full_name":"bitshifter/radixsort","owner":"bitshifter","description":"Radix sort implementations in C and C++","archived":false,"fork":false,"pushed_at":"2016-11-16T04:54:32.000Z","size":563,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-06T05:34:30.981Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"zlib","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bitshifter.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-09-14T23:15:12.000Z","updated_at":"2024-10-02T21:37:51.000Z","dependencies_parsed_at":"2022-07-21T08:00:25.510Z","dependency_job_id":null,"html_url":"https://github.com/bitshifter/radixsort","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitshifter%2Fradixsort","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitshifter%2Fradixsort/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitshifter%2Fradixsort/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitshifter%2Fradixsort/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bitshifter","download_url":"https://codeload.github.com/bitshifter/radixsort/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240142740,"owners_count":19754633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T02:01:17.148Z","updated_at":"2025-02-24T14:31:51.068Z","avatar_url":"https://github.com/bitshifter.png","language":"C++","readme":"This is an implementation of radix sort in C and C++.\n\nThe radix sort implentation also include a 11 bit radix sort which uses less\npasses than the standard 8 bit radix sort, and a floating point key radix sort,\nas described by Michael Herf:\n\n * http://stereopsis.com/radix.html\n\nThe radix sort interface is designed to perform no memory allocations, and does\nnot write the final sorted values to an output buffer, but rather returns which\nbuffer the final result resides in. The rationaly here is the callig code can\ndecide if it's appropriate to allocate temporary space, or to copy the results\nto a specified buffer. If so desired a simple wrapper could be written to\nsimplify the interface at the expense of some performance and memory\nallocation.\n\nThere is a test program which calls each radix sort function with a small\narray to sort, and a perf program which performs a number of iterations\nof each radix sort algorithm for different input sizes. In the case of C++\nthe same data is sorted by the sort provided by each language's respective\nstandard library for comparison purposes.\n\n## Prerequisites\n\nThe test and perf applications require [CMake](http://www.cmake.org) to\ngenerate build files.\n\n## Compiling and running\n\nCMake is used to generate Makefiles that will build the C and C++\nimplementations of the Radix sort. There are scripts to aide with CMake\nbuild generation in the build directory, for example:\n\n~~~\ncd build\n./generate-linux64.sh\n~~~\n\nRunning this script will create debug (unoptimised) and release (optimised)\nbuild directories. Make needs to be invoked inside the debug or release\ndirectory:\n\n~~~\ncd linux64-make/release\nmake\n~~~\n\nThis will generate executables in bench and test subdirectories.\n\n## License\n\nThis software is licensed under the zlib license, see the LICENSE file for\ndetails.\n","funding_links":[],"categories":["C++"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbitshifter%2Fradixsort","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbitshifter%2Fradixsort","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbitshifter%2Fradixsort/lists"}