summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--generators.c15
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)