Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Node {
- constructor(value, next = null) {
- this.value = value;
- this.next = next;
- }
- }
- function removeDups(node) {
- if(node === null) return null;
- let nodes = new Map();
- let current = node.next;
- let prev = node;
- nodes.set(node.value, 1);
- while(current !== null) {
- if(nodes.get(current.value) === 1) {
- prev.next = current.next;
- } else {
- nodes.set(current.value, 1);
- prev = current;
- }
- current = current.next;
- }
- return node;
- }
- function removeDups(node) {
- while(node !== null) {
- let current = node;
- while(current.next !== null) {
- if(current.next.value === node.value) {
- current.next = current.next.next;
- } else {
- current = current.next;
- }
- }
- node = node.next;
- }
- }
- function print(node) {
- while(node !== null) {
- console.log('->' + node.value);
- node = node.next;
- }
- }
- let node1 = new Node(1);
- let node2 = new Node(2);
- let node3 = new Node(3);
- let node4 = new Node(2);
- let node5 = new Node(1);
- node1.next = node2;
- node2.next = node3;
- node3.next = node4;
- node4.next = node5;
- node5.next = null;
- print(removeDups(node1));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement