blob: e5390f7dbbc498ba7c7a84dcd6d7e917331c4055 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
/**
* A struct that represents a single node in a linked list
*/
struct node {
int priority;
int data;
struct node *next;
};
typedef struct node Node;
/**
* A struct that represents a Queue implemented using a Singly Linked List.
*/
typedef struct {
Node *head;
int size;
} PriorityQueue;
PriorityQueue *initialize();
int size(PriorityQueue *queue);
void add(PriorityQueue *queue, int priority, int data);
int delete_min(PriorityQueue *queue);
void destroy(PriorityQueue *queue);
void inspect(PriorityQueue *queue);
|