From 3de7b99fbbfdbb44cfddabf6a697d5c3335bdacb Mon Sep 17 00:00:00 2001 From: Stoycho Kyosev Date: Wed, 26 Oct 2022 15:43:06 +0300 Subject: Add Seminar04 --- Seminar04/linked-list-utils.h | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Seminar04/linked-list-utils.h (limited to 'Seminar04/linked-list-utils.h') diff --git a/Seminar04/linked-list-utils.h b/Seminar04/linked-list-utils.h new file mode 100644 index 0000000..8e0fa23 --- /dev/null +++ b/Seminar04/linked-list-utils.h @@ -0,0 +1,31 @@ +#include +#include + +template +struct LinkedListNode { + T data; + LinkedListNode* next; + + LinkedListNode(const T& elem, LinkedListNode* n = nullptr) : data{elem}, next {n} {} +}; + +template +void printLinkedList(const LinkedListNode* ll) { + const LinkedListNode* iterate = ll; + + while(iterate) { + std::cout << iterate->data << " "; + iterate = iterate->next; + } + + std::cout << std::endl; +} + +template +void freeList(LinkedListNode* ll) { + while(ll) { + LinkedListNode* toDelete = ll; + ll = ll->next; + delete toDelete; + } +} \ No newline at end of file -- cgit v1.3.1-23-gd82d