diff options
| -rw-r--r-- | src/01/01a/priority_queue.c | 3 | ||||
| -rw-r--r-- | src/01/01a/priority_queue.h | 3 | ||||
| -rw-r--r-- | src/01/01a/priority_queue_test.c | 16 |
3 files changed, 11 insertions, 11 deletions
diff --git a/src/01/01a/priority_queue.c b/src/01/01a/priority_queue.c index cf59302..f19c838 100644 --- a/src/01/01a/priority_queue.c +++ b/src/01/01a/priority_queue.c @@ -22,7 +22,8 @@ int size(PriorityQueue *queue) { } // This function is linear time O(n) -void add(PriorityQueue *queue, Node *node) { +void add(PriorityQueue *queue, int priority, int data) { + Node *node = create_node(priority, data); queue->size++; if (queue->head == NULL) { diff --git a/src/01/01a/priority_queue.h b/src/01/01a/priority_queue.h index 17ca5ee..0fc63ee 100644 --- a/src/01/01a/priority_queue.h +++ b/src/01/01a/priority_queue.h @@ -12,8 +12,7 @@ typedef struct { } PriorityQueue; PriorityQueue *initialize(); -Node *create_node(int priority, int data); int size(PriorityQueue *queue); -void add(PriorityQueue *queue, Node *node); +void add(PriorityQueue *queue, int priority, int data); Node *delete_min(PriorityQueue *queue); void destroy(PriorityQueue *queue); diff --git a/src/01/01a/priority_queue_test.c b/src/01/01a/priority_queue_test.c index 88245a2..02ae78e 100644 --- a/src/01/01a/priority_queue_test.c +++ b/src/01/01a/priority_queue_test.c @@ -36,7 +36,7 @@ Ensure(PriorityQueue, returns_size) { Ensure(PriorityQueue, adds_a_node) { PriorityQueue *queue = initialize(); - add(queue, create_node(1, 0)); + add(queue, 1, 0); assert_that(size(queue), is_equal_to(1)); @@ -46,9 +46,9 @@ Ensure(PriorityQueue, adds_a_node) { Ensure(PriorityQueue, removes_the_node_with_the_lowest_priority){ PriorityQueue *queue = initialize(); - add(queue, create_node(3, 300)); - add(queue, create_node(1, 100)); - add(queue, create_node(2, 200)); + add(queue, 3, 300); + add(queue, 1, 100); + add(queue, 2, 200); assert_that(size(queue), is_equal_to(3)); assert_that(delete_min(queue)->data, is_equal_to(100)); @@ -70,7 +70,7 @@ Ensure(PriorityQueue, when_removing_node_from_empty_queue) { Ensure(PriorityQueue, when_removing_it_decreases_the_size) { PriorityQueue *queue = initialize(); - add(queue, create_node(1, 0)); + add(queue, 1, 0); delete_min(queue); assert_that(size(queue), is_equal_to(0)); @@ -81,9 +81,9 @@ Ensure(PriorityQueue, when_removing_it_decreases_the_size) { Ensure(PriorityQueue, when_removing_the_last_node_it_decrements_the_count_correctly) { PriorityQueue *queue = initialize(); - add(queue, create_node(2, 200)); - add(queue, create_node(1, 100)); - add(queue, create_node(3, 300)); + add(queue, 2, 200); + add(queue, 1, 100); + add(queue, 3, 300); delete_min(queue); delete_min(queue); |
