面试题 5:替换空格 Posted on 2017-11-19 请实现一个函数,把字符串中的每个空格替换成“20%”。例如,输入“We are happy.”,则输出“We%20are%20happy.”。 URL参数中含有特殊字符,如空格、”#”等。会导致服务器端无法获得正确的参数值,转换规则:”%”后面跟上 ASCII 码的两位十六进制的表示。 从前往后复制每个字符则需要重复移动数字多次(O(n^2)),从后往前复制,这样就能减少移动的次数,从而提高效率(O(n))。能清晰地分析出两种不同方法的时间效率各是多少。 画一两个示意图解释自己的思路(两个指针),既能帮助我们厘清思路,也能使我们和面试官的交流变得更加高效。 对内存覆盖要有高度的警惕。 Source Code