Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Example program
- #include <iostream>
- #include <string>
- #include <set>
- using namespace std;
- struct Node
- {
- int data;
- struct Node* next;
- } *first = NULL;
- void add(int data)
- {
- struct Node *p;
- if(first == NULL)
- {
- first = new Node;
- first->data = data;
- first->next = NULL;
- }
- else
- {
- p = first;
- while(p->next !=NULL)
- {
- p = p->next;
- }
- struct Node *t = new struct Node;
- t->data = data;
- p->next = t;
- }
- }
- void print(struct Node *p)
- {
- if(p)
- {
- cout << p->data << endl;
- print(p->next);
- }
- }
- void removeDuplicates(struct Node *p)
- {
- set <int> s1;
- struct Node *prev = NULL;
- while(p)
- {
- if(s1.count(p->data) == 1)
- {
- prev->next = p->next;
- }
- else
- {
- s1.insert(p->data);
- }
- prev = p;
- p = p->next;
- }
- }
- int main()
- {
- add(10);
- add(10);
- add(20);
- add(20);
- removeDuplicates(first);
- print(first);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement