Skip to content
Programming101
Programming101

Learn everything about programming

  • Home
  • CS Subjects
    • IoT – Internet of Things
    • Digital Communication
    • Human Values
  • Programming Tutorials
    • C Programming
    • Data structures and Algorithms
  • HackerRank Solutions
    • HackerRank Algorithms Solutions
    • HackerRank C problems solutions
    • HackerRank C++ problems solutions
    • HackerRank Java problems solutions
    • HackerRank Python problems solutions
Programming101
Programming101

Learn everything about programming

HackerRank Day 24 More Linked Lists 30 days of code solution

YASH PAL, 31 July 2024

In this HackerRank Day 24 More Linked Lists 30 days of code problem set, we need to complete the function removeDuplicates that can delete any node in the linked list that is duplicate. and return the head of the updated list. 

Problem solution in Python 2 programming.

    def removeDuplicates(self,head):
        #Write your code here
        current = head
        while current:
            while current.next and current.data == current.next.data:
                current.next = current.next.next
            current = current.next
        return head

Problem solution in Python 3 programming.

    def removeDuplicates(self,head):
        qu = []
        if head == None:
            return 
        p = head
        qu.append(p.data)
        p = p.next
        while p is not None:
            qu.append(p.data)
            p = p.next
        qu = list(dict.fromkeys(qu))
        for item in qu:
            print(item,end=' ')

Problem solution in java programming.

    public static Node removeDuplicates(Node head) {
        Set<Integer> set = new HashSet<Integer>();
        if (head == null) return head;
        set.add(head.data);
        Node curr = head;
        while (curr.next != null) {
            
            if (set.contains(curr.next.data)) {
                curr.next = curr.next.next;
            } else {
                set.add(curr.next.data);
                curr = curr.next;
            }            
        }
        return head;
    }

Problem solution in c++ programming.

          Node* removeDuplicates(Node *head)
          {
            //Write your code here
              if(head == nullptr){
                  return head;
              }
              
              Node *currentNode = head, *lastNode = head;
              int lastVal = head->data;
              for(;;){
                  currentNode = currentNode->next;
                  if(currentNode == nullptr){
                      break;
                  }
                  
                  int currentVal = currentNode->data;
                  if(currentVal == lastVal){
                      lastNode->next = currentNode->next;
                      currentNode = lastNode;
                  } else {
                    lastVal = currentVal;
                    lastNode = currentNode;
                  }
              }             
              return head;              
          }

Problem solution in c programming.

Node* removeDuplicates(Node *head){
  //Write your code here
    if (head == NULL || head->next == NULL) {
        return head;
    }
    
    Node *prev = head;
    Node *curr = head->next;
    
    while (curr != NULL) {
        if (prev->data == curr->data) {
            prev->next = curr->next;
            free(curr);
            curr = prev->next;
        } else {
            prev = curr;
            curr = curr->next;
        }
    }
    return head;
}

Problem solution in Javascript programming.

    this.removeDuplicates=function(head){
        var prev = null;
        var current = head;
        var arr = [];
        while(current != null) {
            if(arr[arr.length - 1] != current.data) {
                arr.push(current.data);
            } else {
                prev.next = current.next;
            }
            prev = current;
            current = current.next;
        }
        console.log(arr.join(' '));
    }

30 days of code coding problems

Post navigation

Previous post
Next post
  • How AI Is Revolutionizing Personalized Learning in Schools
  • GTA 5 is the Game of the Year for 2024 and 2025
  • Hackerrank Day 5 loops 30 days of code solution
  • Hackerrank Day 6 Lets Review 30 days of code solution
  • Hackerrank Day 14 scope 30 days of code solution
©2025 Programming101 | WordPress Theme by SuperbThemes