public ListNode deleteDuplicates(ListNode head) {
    	if (head == null)
    		return head;
    	
    	ListNode node = head;
    	while(node.next != null && node.val == node.next.val)
    		node = node.next;

    	if (node != head)
    		head = deleteDuplicates(node.next);
    	else
    		head.next = deleteDuplicates(node.next);
    		
    	return head;
    }