summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAlexandre Jesus <adbjesus@gmail.com>2016-09-22 02:02:20 +0100
committerAlexandre Jesus <adbjesus@gmail.com>2016-09-22 02:02:20 +0100
commite7fcca35efae60ca2e24225b046ab4e9a801b031 (patch)
tree3b1fcc72ee7ecce4a5be414b7cfae3ac6c2f2c2d /include
parentd3878228d84dd2296cd85d914f27087d3cae2835 (diff)
downloadlibuknapsack-e7fcca35efae60ca2e24225b046ab4e9a801b031.tar.gz
libuknapsack-e7fcca35efae60ca2e24225b046ab4e9a801b031.zip
Create tree structure, adapt dfs to use tree (with iterative technique), fix random sort
Diffstat (limited to 'include')
-rw-r--r--include/common.h1
-rw-r--r--include/structs.h9
2 files changed, 10 insertions, 0 deletions
diff --git a/include/common.h b/include/common.h
index 9332e6e..b188955 100644
--- a/include/common.h
+++ b/include/common.h
@@ -12,6 +12,7 @@ void print_front(struct front_item *);
void free_data(struct data *);
void free_front(struct front_item *);
struct front_item * new_front_item(double, double, struct front_item *, struct front_item *);
+struct tree_item * new_tree_item(long int, long int, double, double, struct tree_item *, struct tree_item *);
double dist_items(struct item *, struct item *);
int len_front(struct front_item *);
int cmp_items_ratio(const void * a, const void * b);
diff --git a/include/structs.h b/include/structs.h
index 035af45..7c39b4d 100644
--- a/include/structs.h
+++ b/include/structs.h
@@ -21,4 +21,13 @@ struct front_item {
struct front_item * prev;
clock_t time;
};
+
+struct tree_item {
+ long int depth;
+ long int itemi;
+ struct item values;
+ struct tree_item * prev;
+ struct tree_item * next;
+};
+
#endif