func removeDuplicate(l *list.List) *list.List { sMap = make(map[int]bool) var next *list.Element for e := l.Front(); e != nil; e = next { next = e.Next() m := e.Value.(int) //To verify whether the node value present in the map if sMap[m] == true { l.Remove(e) } else { sMap[m] = true } } return l }
func removeDuplicate(l *list.List) *list.List { var next *list.Element var inNext *list.Element for e := l.Front(); e != nil; e = next { m := e.Value.(int) next = e.Next() //Inner for loop to iterate from the current node for f := e; f != nil; f = inNext { n := f.Value.(int) inNext = f.Next() if e != f { //To check whether the values m and n are same. If so, remove the node from the list if m == n { l.Remove(f) } } } } return l }