Concept Flow - Delete from End of Doubly Linked List
Start at tail node
Check if list is empty?
| No
Check if only one node?
Set head and tail to null
Move tail pointer to tail.prev
Set new tail.next to null
Delete old tail
Done
Start from the tail node, check if list is empty or has one node, then update pointers to remove the last node.
