      "## Algorithm: In-Place\n",
      "\n",
      "* For each node\n",
      "    * Compare node with every other node\n",
      "        * If the node's value is in the hash map\n",
      "            * Delete the node\n",
      "        * Else\n",
      "            * Add node's value to the hash map\n",
      "\n",
      "Complexity:\n",
      "* Time: O(n^2)\n",
      "* Space: O(1)\n",
      "\n",
 
</s> remove     "* Space: O(n)\n",
    "\n",
    "Note:\n",
    "* Deletion requires two pointers, one to the previous node and one to the current node"
 </s> add     "* Space: O(n)" </s> remove     "* Deletion requires two pointers, one to the previous node and one to the current node\n",
 </s> add  </s> remove     "* Can you use additional data structures?\n",
    "    * Implement both solutions\n",
 </s> add 
    "        * Delete nodes that match current node\n",
      "## Algorithm: In-Place\n",
      "\n",
      "* For each node\n",
      "    * Compare node with every other node\n",
    "        * Delete nodes that match current node\n",
    "        * Delete nodes that match current node\n",
    "        * Delete nodes that match current node\n",
    "        * Delete nodes that match current node\n",
      "\n",
      "Complexity:\n",
      "* Time: O(n^2)\n",
      "* Space: O(1)\n",
      "\n",
keep keep keep keep replace replace replace replace keep keep keep keep keep
 Polish remove duplicates challenge and solution

Update constraints and algorithm discussion. 
linked_lists/remove_duplicates/remove_duplicates_solution.ipynb