diff options
-rw-r--r-- | generators.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/generators.c b/generators.c index 002b128..c4a70a0 100644 --- a/generators.c +++ b/generators.c @@ -8,6 +8,19 @@ static void generate_random(int *buffer, size_t size) { srandom(1); for (size_t i = 0; i < size; i++) buffer[i] = random(); + + /* compress the values to nice small numbers to make debugging nicer */ +#if 0 + int maxcompressed = -1; + for (size_t compressed = 0; compressed < size; compressed++) { + size_t minidx = -1; + for (size_t i = 0; i < size; i++) { + if (maxcompressed < buffer[i] && (minidx >= size || buffer[i] < buffer[minidx])) + minidx = i; + } + buffer[minidx] = ++maxcompressed; + } +#endif } static void generate_sorted(int *buffer, size_t size) @@ -17,7 +30,7 @@ static void generate_sorted(int *buffer, size_t size) static void generate_reverse(int *buffer, size_t size) { - for (size_t i = 0; i < size; i++) buffer[i] = INT_MAX - i; + for (size_t i = 0; i < size; i++) buffer[i] = size - i - 1; } static void generate_constant(int *buffer, size_t size) |