In this Leetcode Remove Duplicates from Sorted List problem solution we have Given the head of a sorted linked list, delete all duplicates such that each element appears only once. Return the linked list sorted as well.
Problem solution in Python.
class Solution: def deleteDuplicates(self, head: ListNode) -> ListNode: if not head: return current = head if current: while current.next and current: # print(current.val) if current.val == current.next.val: current.next = current.next.next else: current= current.next return head
Problem solution in Java.
public ListNode deleteDuplicates(ListNode head) { ListNode dummy = head; while(dummy != null && dummy.next !=null){ if(dummy.val == dummy.next.val) dummy.next = dummy.next.next; else dummy = dummy.next; } return head; }
Problem solution in C++.
class Solution { public: ListNode* deleteDuplicates(ListNode* head) { if (head==nullptr) return 0; struct ListNode* ptr; ptr=head; while (ptr->next != nullptr){ if (ptr->val ==ptr->next->val){ ptr->next=ptr->next->next; } else ptr=ptr->next; } return head; } };
Problem solution in C.
struct ListNode* deleteDuplicates(struct ListNode* head){ struct ListNode* cur = head; if(head == NULL) return head; while(cur->next != NULL) { if(cur->val == (cur->next->val)) { cur->next = cur->next->next; } else cur = cur->next; } return head; }