      "class HashTable(object):\n",
      "    \n",
      "    def __init__(self, size):\n",
      "        self.size = size\n",
      "        self.table = [[] for _ in xrange(self.size)]\n",
      "\n",
      "    def hash_function(self, key):\n",
      "        return key % self.size\n",
      "\n",
      "    def set(self, key, value):\n",
 
</s> remove     "        for i in xrange(num_items):\n",
 </s> add     "        for i in range(num_items):\n", </s> remove     "        for i in xrange(num_items):\n",
 </s> add     "        for i in range(num_items):\n", </s> remove     "        for i in xrange(0, stack_size):\n",
 </s> add     "        for i in range(0, stack_size):\n", </s> remove     "        for i in xrange(0, stack_size):\n",
 </s> add     "        for i in range(0, stack_size):\n", </s> remove     "        for _ in xrange(0, iterations_to_compare_half):\n",
 </s> add     "        for _ in range(0, iterations_to_compare_half):\n",
    "        self.table = [[] for _ in range(self.size)]\n",
      "class HashTable(object):\n",
      "    \n",
      "    def __init__(self, size):\n",
      "        self.size = size\n",
    "        self.table = [[] for _ in range(self.size)]\n",
      "\n",
      "    def hash_function(self, key):\n",
      "        return key % self.size\n",
      "\n",
      "    def set(self, key, value):\n",
keep keep keep keep replace keep keep keep keep keep
 Changed xrange to range to be compatible with Python 3. 
arrays_strings/hash_map/hash_map_solution.ipynb