add deep copy for the linked list with random pointer