From 25395399f6a2822042a445fd6c812566d36dc3f9 Mon Sep 17 00:00:00 2001 From: Tucker Evans Date: Sun, 23 Feb 2020 14:21:16 -0500 Subject: Add front/back access functions for double ended queue --- collections/double_ended_queue.c | 20 ++++++++++++++++++++ collections/double_ended_queue.h | 8 ++++---- 2 files changed, 24 insertions(+), 4 deletions(-) (limited to 'collections') diff --git a/collections/double_ended_queue.c b/collections/double_ended_queue.c index 1f18330..ac9c131 100644 --- a/collections/double_ended_queue.c +++ b/collections/double_ended_queue.c @@ -192,3 +192,23 @@ int size; root->end = root->beg + size; } + +void* deq_front(root) +deq *root; +{ + if (!root) { + return; + } + + return *root->beg; +} + +void* deq_back(root) +deq *root; +{ + if (!root) { + return; + } + + return *root->end; +} diff --git a/collections/double_ended_queue.h b/collections/double_ended_queue.h index 283d9c3..226918d 100644 --- a/collections/double_ended_queue.h +++ b/collections/double_ended_queue.h @@ -22,13 +22,13 @@ void* deq_pop_back(deq*); void deq_swap(deq*, int, int); void deq_truncate(deq*, int); +void* deq_front(deq*); +void* deq_back(deq*); + /* * resevee - * front - * back - * push/pop front - * push/pop back + * push back * swap_rm_front/back * insert * remove -- cgit v1.1