diff options
author | scratko <m@scratko.xyz> | 2024-04-07 03:07:42 +0300 |
---|---|---|
committer | scratko <m@scratko.xyz> | 2024-04-07 03:07:42 +0300 |
commit | 2c2448cc94b8f17ac699814a75110411d57f3bea (patch) | |
tree | 4107fa66264cda94dd01c3bb00da29945c8d6131 /queue.h | |
parent | bdee2852c13f6b02ec5207ded584839a3118233e (diff) | |
download | pacman-2c2448cc94b8f17ac699814a75110411d57f3bea.tar.gz pacman-2c2448cc94b8f17ac699814a75110411d57f3bea.tar.bz2 pacman-2c2448cc94b8f17ac699814a75110411d57f3bea.zip |
BFS, queue files
Fixed remaining direction check for pacman (old version was commented out).
Breadth First Search for red ghost.
Changed switch style.
Diffstat (limited to 'queue.h')
-rw-r--r-- | queue.h | 25 |
1 files changed, 25 insertions, 0 deletions
@@ -0,0 +1,25 @@ +#ifndef QUEUE_H_SENTRY +#define QUEUE_H_SENTRY + +#include "ghosts.h" + +struct item { + struct coordinates point; + struct item *next; +}; + +struct queue { + struct item *first; + struct item *last; +}; + +void queue_init(struct queue *q); +void queue_push(struct queue *q, const struct coordinates *data); +struct coordinates queue_front(const struct queue *q); +int empty(const struct queue *q); +void pop(struct queue *q); +int equal_points(struct coordinates tmp_point, struct coordinates target_point); +int is_consist_point(const struct queue *q, struct coordinates target_point); +void queue_clear(struct queue *q); + +#endif |