From f46e9b06d9ed6ae8c08bbfd8327464075f2ddb31 Mon Sep 17 00:00:00 2001 From: Walter Schenk Date: Sun, 14 Dec 2025 21:37:24 +0100 Subject: [PATCH] array --- numbers.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/numbers.c b/numbers.c index 938c6ae..17456c1 100644 --- a/numbers.c +++ b/numbers.c @@ -24,7 +24,7 @@ CompareFctType compareFct(const void *arg1, const void *arg2) // Returns len random numbers between 1 and 2x len in random order which are all different, except for two entries. // Returns NULL on errors. Use your implementation of the binary search tree to check for possible duplicates while // creating random numbers. -unsigned int *createNumbers(unsigned int len) +unsigned int* createNumbers(unsigned int len) { srand(time(NULL)); @@ -55,6 +55,18 @@ unsigned int *createNumbers(unsigned int len) } addToTree(numbers, duplicate->data, sizeof(int), compareFct, NULL); + + TreeNode* treeData = nextTreeData(numbers); + int* array = malloc(len*sizeof(int)); + array[0] = treeData->data; + + for (int i = 1; i < len; i++) + { + treeData = nextTreeData(NULL); + array[i] = treeData->data; + } + + return array; } // Returns only the only number in numbers which is present twice. Returns zero on errors.