From 6c6328375c55683645146909b7ab760d0de0d463 Mon Sep 17 00:00:00 2001 From: Santo Cariotti Date: Sun, 18 Oct 2020 18:56:43 +0200 Subject: chore: name of first year folder --- .../data_structures/queue_w_array.cc | 66 ---------------------- 1 file changed, 66 deletions(-) delete mode 100644 I_anno/Programmazione_2/data_structures/queue_w_array.cc (limited to 'I_anno/Programmazione_2/data_structures/queue_w_array.cc') diff --git a/I_anno/Programmazione_2/data_structures/queue_w_array.cc b/I_anno/Programmazione_2/data_structures/queue_w_array.cc deleted file mode 100644 index fb92d68..0000000 --- a/I_anno/Programmazione_2/data_structures/queue_w_array.cc +++ /dev/null @@ -1,66 +0,0 @@ -#include - -using namespace std; - -template -class queue { -public: - queue(int n) : _size{n}, _counter{0}, _head{0}, _tail{0} { - _arr = new H[n]; - } - ~queue() { - delete _arr; - } - bool is_empty() { - return _counter == 0; - } - bool is_full() { - return _counter == _size; - } - - queue* enqueue(H x) { - if(!is_full()) { - _arr[_tail] = x; - if(_tail == _size-1) - _tail = 0; - else - ++_tail; - _counter++; - } - - return this; - } - H dequeue() { - if(is_empty()) return -1; - H x = _arr[_head]; - - if(_head == _size-1) - _head = 0; - else - ++_head; - - _counter--; - return x; - } -private: - H* _arr; - int _size; - short _counter; - short _head; - short _tail; -}; - -int main() { - queue* q = new queue{4}; - q->enqueue(5)->enqueue(13)->enqueue(3); - cout << q->dequeue() << '\n'; - q->enqueue(4)->enqueue(6)->enqueue(7); - q->dequeue(); - q->enqueue(7); - - for(int i = 0; i < 6; ++i) { - cout << q->dequeue() << ' '; - } - delete q; - return 0; -} -- cgit v1.2.3-18-g5258