diff options
| author | mo khan <mo.khan@gmail.com> | 2020-06-29 14:51:01 -0600 |
|---|---|---|
| committer | mo khan <mo.khan@gmail.com> | 2020-06-29 14:51:01 -0600 |
| commit | 8eabde790b36c3bd29b2e6b9c5296ce5b3b38dcd (patch) | |
| tree | 56eb49bd20b99121856e5417974bed3daa6cf309 /src/01 | |
| parent | 197a36f5a95a751bb42b86e7f02c7927c394e5e9 (diff) | |
Return data instead of a Node*
Diffstat (limited to 'src/01')
| -rw-r--r-- | src/01/01a/priority_queue.c | 6 | ||||
| -rw-r--r-- | src/01/01a/priority_queue.h | 2 | ||||
| -rw-r--r-- | src/01/01a/priority_queue_test.c | 2 |
3 files changed, 5 insertions, 5 deletions
diff --git a/src/01/01a/priority_queue.c b/src/01/01a/priority_queue.c index f19c838..35cfa92 100644 --- a/src/01/01a/priority_queue.c +++ b/src/01/01a/priority_queue.c @@ -49,14 +49,14 @@ void add(PriorityQueue *queue, int priority, int data) { } // This function is constant time O(1) -Node *delete_min(PriorityQueue *queue) { +int delete_min(PriorityQueue *queue) { if (queue->head) { Node *tmp = queue->head; queue->head = tmp->next; queue->size--; - return tmp; + return tmp->data; } - return NULL; + return 0; } void destroy(PriorityQueue *queue) { diff --git a/src/01/01a/priority_queue.h b/src/01/01a/priority_queue.h index 0fc63ee..c172411 100644 --- a/src/01/01a/priority_queue.h +++ b/src/01/01a/priority_queue.h @@ -14,5 +14,5 @@ typedef struct { PriorityQueue *initialize(); int size(PriorityQueue *queue); void add(PriorityQueue *queue, int priority, int data); -Node *delete_min(PriorityQueue *queue); +int 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 02ae78e..29da2b3 100644 --- a/src/01/01a/priority_queue_test.c +++ b/src/01/01a/priority_queue_test.c @@ -51,7 +51,7 @@ Ensure(PriorityQueue, removes_the_node_with_the_lowest_priority){ add(queue, 2, 200); assert_that(size(queue), is_equal_to(3)); - assert_that(delete_min(queue)->data, is_equal_to(100)); + assert_that(delete_min(queue), is_equal_to(100)); assert_that(queue->head->data, is_equal_to(200)); assert_that(size(queue), is_equal_to(2)); |
