Tweak remove dupes solution to use a single node 'reference'.

This commit is contained in:
Donne Martin 2016-02-15 06:29:11 -05:00
parent 21add6f4f5
commit 08fabdf58d

View File

@ -127,16 +127,16 @@
"class MyLinkedList(LinkedList):\n",
"\n",
" def remove_dupes(self):\n",
" seen_data = set()\n",
" curr = self.head\n",
" prev = None\n",
" while curr is not None:\n",
" if curr.data in seen_data:\n",
" prev.next = curr.next\n",
" if self.head is None:\n",
" return\n",
" node = self.head\n",
" seen_data = set({node.data})\n",
" while node.next is not None:\n",
" if node.next.data in seen_data:\n",
" node.next = node.next.next\n",
" else:\n",
" seen_data.add(curr.data)\n",
" prev = curr\n",
" curr = curr.next\n",
" seen_data.add(node.next.data)\n",
" node = node.next\n",
"\n",
" def remove_dupes_in_place(self):\n",
" curr = self.head\n",