# Solving Leetcode Interviews in Seconds with AI: Remove Duplicates from Sorted List


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "83" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> 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.   Example 1:   Input: head = [1,1,2] Output: [1,2]  Example 2:   Input: head = [1,1,2,3,3] Output: [1,2,3]    Constraints:  The number of nodes in the list is in the range [0, 300]. -100 <= Node.val <= 100 The list is guaranteed to be sorted in ascending order.  

	# Explanation
	Here's the solution to remove duplicates from a sorted linked list:

*   **Iterate and Compare:** Traverse the linked list, comparing the value of each node with the value of the next node.
*   **Remove Duplicates:** If a node's value is the same as the next node's value, remove the next node.
*   **Continue Traversal:** Continue the traversal, advancing the current node only when a duplicate is not found.

*   **Time Complexity:** O(n), where n is the number of nodes in the linked list. **Space Complexity:** O(1).

	
	# Code
	```python
	class ListNode:
    def __init__(self, val=0, next=None):
        self.val = val
        self.next = next

def deleteDuplicates(head: ListNode) -> ListNode:
    """
    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.
    """
    current = head
    while current and current.next:
        if current.val == current.next.val:
            current.next = current.next.next
        else:
            current = current.next
    return head
	```
			
