      "def encode_spaces_alt(string):\n",
      "    return re.sub(' ', '%20', string)\n",
      "\n",
      "def encode_spaces_alt2(string):\n",
      "    return string.replace(' ', '%20')"
     ]
    }
   ],
   "metadata": {
    "kernelspec": {
 
</s> remove     "str0 = None\n",
    "str1 = bytearray(' ||')\n",
    "str2 = bytearray(' foo bar ||||||')\n",
    "str3 = bytearray('foo')\n",
    "encode_spaces(str0, 0)\n",
    "encode_spaces(str1, 1)\n",
    "encode_spaces(str2, 9)\n",
    "encode_spaces(str3, 3)\n",
    "print(str0)\n",
    "print(str1)\n",
    "print(str2)\n",
    "print(str3)"
 </s> add     "run_tests(encode_spaces)" </s> remove     "* NULL\n",
 </s> add     "* NULL->NULL\n", </s> remove     "Since Python strings are immutable, we'll use a bytearray instead to exercise in-place string manipulation as you would get with a C string (which is null terminated, as seen in the above diagram).  For the python bytearray we will not use a null terminator.\n",
 </s> add     "![alt text](https://raw.githubusercontent.com/donnemartin/algorithms-data-structures/master/images/replace_string.jpg)\n", </s> remove     "![alt text](https://raw.githubusercontent.com/donnemartin/algorithms-data-structures/master/images/replace_string.jpg)\n",
 </s> add     "Since Python strings are immutable, we'll use a bytearray instead to exercise in-place string manipulation as you would get with a C string (which is null terminated, as seen in the diagram below).  For the python bytearray we will not use a null terminator.\n",
    "    return string.replace(' ', '%20')\n",
    "\n",
    "run_tests(encode_spaces_alt)\n",
    "run_tests(encode_spaces_alt2)"
      "def encode_spaces_alt(string):\n",
      "    return re.sub(' ', '%20', string)\n",
      "\n",
      "def encode_spaces_alt2(string):\n",
    "    return string.replace(' ', '%20')\n",
    "\n",
    "run_tests(encode_spaces_alt)\n",
    "run_tests(encode_spaces_alt2)"
     ]
    }
   ],
   "metadata": {
    "kernelspec": {
keep keep keep keep replace keep keep keep keep keep
 Updated unit test to use nose and moved it to Test Cases section.  Tweaked algorithm description. 
arrays-strings/replace_char.ipynb