From 4a24a6b93500e4b8f18f9bfd63124602dcfe2c0b Mon Sep 17 00:00:00 2001 From: NunoSempere Date: Wed, 29 Nov 2023 20:04:41 +0000 Subject: [PATCH] clean scratchpad, start quickselect --- scratchpad/core.c | 27 --------------------------- scratchpad/quickselect/makefile | 5 +++++ scratchpad/quickselect/quickselect | Bin 0 -> 16704 bytes scratchpad/quickselect/quickselect.c | 8 ++++++++ 4 files changed, 13 insertions(+), 27 deletions(-) delete mode 100644 scratchpad/core.c create mode 100644 scratchpad/quickselect/makefile create mode 100755 scratchpad/quickselect/quickselect create mode 100644 scratchpad/quickselect/quickselect.c diff --git a/scratchpad/core.c b/scratchpad/core.c deleted file mode 100644 index 20b59e5..0000000 --- a/scratchpad/core.c +++ /dev/null @@ -1,27 +0,0 @@ - -uint64_t xorshift64(uint64_t* seed) -{ - // Algorithm "xor" from p. 4 of Marsaglia, "Xorshift RNGs" - // - uint64_t x = *seed; - x ^= x << 13; - x ^= x >> 7; - x ^= x << 17; - return *seed = x; -} - -double sample_unit_uniform(uint64_t* seed) -{ - // samples uniform from [0,1] interval. - return ((double)xorshift64(seed)) / ((double)UINT64_MAX); -} - -double sample_unit_normal(uint64_t* seed) -{ - // // See: - double u1 = sample_unit_uniform(seed); - double u2 = sample_unit_uniform(seed); - double z = sqrtf(-2.0 * log(u1)) * sin(2 * PI * u2); - return z; -} - diff --git a/scratchpad/quickselect/makefile b/scratchpad/quickselect/makefile new file mode 100644 index 0000000..c755523 --- /dev/null +++ b/scratchpad/quickselect/makefile @@ -0,0 +1,5 @@ +build: + gcc quickselect.c -lm -o quickselect + +run: + ./quickselect diff --git a/scratchpad/quickselect/quickselect b/scratchpad/quickselect/quickselect new file mode 100755 index 0000000000000000000000000000000000000000..e3c99f2a3630f91dbf4ae34289e1eeb650fd3d06 GIT binary patch literal 16704 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 +#include +#include + +int main(){ + printf("Hello world!\n"); + return 0; +}