From 01c757e09afbc6ae401a56e9f588b21cea54b613 Mon Sep 17 00:00:00 2001 From: Alexandre Jesus Date: Mon, 6 Nov 2017 18:27:28 +0000 Subject: Add nem_ull with shuffle --- src/main/nem_ull_shuffle.c | 43 +++++++++++++++++++++++++++++++++++++++++++ src/main/online.c | 2 ++ 2 files changed, 45 insertions(+) create mode 100644 src/main/nem_ull_shuffle.c (limited to 'src/main') diff --git a/src/main/nem_ull_shuffle.c b/src/main/nem_ull_shuffle.c new file mode 100644 index 0000000..e0996ba --- /dev/null +++ b/src/main/nem_ull_shuffle.c @@ -0,0 +1,43 @@ +#include +#include +#include +#include +#include +#include "common.h" +#include "structs.h" +#include "nem_ull.h" + +int main(int argc, char * argv[]){ + struct data * data; + struct front_item * front = NULL; + + if(argc!=3){ + printf("Wrong number of arguments!\n"); + printf("Example usage: %s cut_point data_file\n", argv[0]); + return 0; + } + + data = input(argv[2]); + + struct timeval tv; + gettimeofday(&tv, NULL); + srand(tv.tv_sec + tv.tv_usec); + + /* Sort data */ + qsort(data->items, data->N, sizeof(struct item), cmp_items_ratio); + + printf("%d\n", atoi(argv[1])); + clock_t t = clock(); + front = nem_ull_online_shuffle(data, atoi(argv[1])); + + /* Remove first item from front (only a placeholder) */ + t = clock() - t; + printf("%f,%d\n",((float)t)/CLOCKS_PER_SEC,len_front(front)); + + print_front(front); + + free_front(front); + free_data(data); + + return 0; +} diff --git a/src/main/online.c b/src/main/online.c index fbec660..7dec27c 100644 --- a/src/main/online.c +++ b/src/main/online.c @@ -13,6 +13,8 @@ int main(int argc, char * argv[]){ struct data * data; struct front_item * front = NULL; struct online_return ret; + ret.tree = NULL; + ret.front = NULL; if(argc!=6){ printf("Wrong number of arguments!\n"); -- cgit v1.2.3