blob: 486b41e43235d9a963e8cbda3c094016c508e50f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#include "linked-list-utils.h"
template<class T>
void reverseLinkedList(LinkedListNode<T>*& ll) {
LinkedListNode<T>* previous = nullptr;
LinkedListNode<T>* next = nullptr;
LinkedListNode<T>* iterate = ll;
while(iterate) {
next = iterate->next;
iterate->next = previous;
previous = iterate;
iterate = next;
}
ll = previous;
}
void example() {
LinkedListNode<int>* ll = new LinkedListNode(1, new LinkedListNode(2, new LinkedListNode(3, new LinkedListNode(4))));
printLinkedList(ll);
reverseLinkedList(ll);
printLinkedList(ll);
freeList(ll);
}
|