2/26/2018

Day 24 More Linked Lists HackerRank Solution In C++

Problem:- Day-24-More-Linked-List solution or HackerRank/Day 24: More Linked Lists or Day 24 More Linked Lists solution or Day 24 More Linked Lists hackerrank or hackerrank More Linked Lists or Day 24 More Linked Lists java or HR-30-days-of-code/Day 24 More Linked Lists or More Linked Lists hackerrank solution in c++ or day 24 hackerrank solution or day 24 solution in c++ or hackerrank day 24 solution in c or hackerrank Day 24 More Linked Lists solution or hackerrank Running Time and Complexity solution

Task:- A Node class is provided for you in the editor. A Node object has an integer data field, data, and a Node instance pointer, next, pointing to another node (i.e.: the next node in a list).

A removeDuplicates function is declared in your editor, which takes a pointer to the head node of a linked list as a parameter. Complete removeDuplicates so that it deletes any duplicate nodes from the list and returns the head of the updated list.

Note: The head pointer may be null, indicating that the list is empty. Be sure to reset your next pointer when performing deletions to avoid breaking the list.

Input Format

You do not need to read any input from stdin. The following input is handled by the locked stub code and passed to the removeDuplicates function:

The first line contains an integer, N, the number of nodes to be inserted.

The N subsequent lines each contain an integer describing the data value of a node being inserted at the list's tail.

Constraints

The data elements of the linked list argument will always be in non-decreasing order.

Output Format

Your removeDuplicates function should return the head of the updated linked list. The locked stub code in your editor will print the returned list to stdout.

Sample Input

6
1
2
2
3
3
4

Sample Output

1 2 3 4

Explanation

N = 6, and our non-decreasing list is {1, 2, 2, 3, 3, 4}. The values 2 and 3 both occur twice in the list, so we remove the two duplicate nodes. We then return our updated (ascending) list, which is {1, 2, 3, 4}.

Tip:- Copy the colored code and paste into HackerRank Editor.

Submit this solution:- Click Here

Solution:-

#include <cstddef>
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
class Node
{
    public:
        int data;
        Node *next;
        Node(int d){
            data=d;
            next=NULL;
        }
};
class Solution{
    public:
Node* removeDuplicates(Node *head)
{
    if (!head)
        return head;
    
    Node *node = head;
    while (node->next) {
        if (node->data == node->next->data) 
            node->next = node->next->next;
        else
            node = node->next;
    }
    
    return head;
}
          Node* insert(Node *head,int data)
          {
               Node* p=new Node(data);
               if(head==NULL){
                   head=p;  

               }
               else if(head->next==NULL){
                   head->next=p;

               }
               else{
                   Node *start=head;
                   while(start->next!=NULL){
                       start=start->next;
                   }
                   start->next=p;   

               }
                    return head;
                
            
          }
          void display(Node *head)
          {
                  Node *start=head;
                    while(start)
                    {
                        cout<<start->data<<" ";
                        start=start->next;
                    }
           }
};

int main()
{
Node* head=NULL;
  Solution mylist;
    int T,data;
    cin>>T;
    while(T-->0){
        cin>>data;
        head=mylist.insert(head,data);
    }
    head=mylist.removeDuplicates(head);

mylist.display(head);



Output:-
Day 24 More Linked Lists Solution In C++

You May Also See

1. Day 25: Running Time and Complexity

2. Day 26: Nested Logic

3. Day 27: Testing

4. Day 28: RegEx, Patterns, and Intro to Databases

5. Day 29: Bitwise AND

No comments:

Post a Comment