linked list: pop from O(2n) to O(n)