#include"linked-list-utils.h" template LinkedListNode* findMiddle(LinkedListNode* ll) { LinkedListNode* fast = ll; LinkedListNode* slow = ll; while(fast && fast->next) { fast = fast->next->next; slow = slow->next; } return slow; } void example() { LinkedListNode* ll = new LinkedListNode(1, new LinkedListNode(2, new LinkedListNode(3, new LinkedListNode(4)))); LinkedListNode* lls = new LinkedListNode(1, new LinkedListNode(2, new LinkedListNode(3, new LinkedListNode(4, new LinkedListNode(5))))); LinkedListNode* firstMiddle = findMiddle(ll); LinkedListNode* secondMiddle = findMiddle(lls); std::cout << firstMiddle->data << " " << secondMiddle->data; freeList(ll); freeList(lls); }