题目:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
注:这题很简单,我也忘了这是哪的笔试题,可能是剑指OFFER的?
思路,没有思路,找到空格,干掉它就行了。。可能在具体细节里面有一些要注意的点。单说一个替换,在JAVA里面有个replace函数不知大家好不好意思用hhh。。。说到替换,就有两种思路:
1.搞一新的字符串。2.在原有字符串上修改。
给出我的思路:
1 public class Solution { 2 public String replaceSpace(StringBuffer str) { 3 StringBuffer buffer=new StringBuffer(); 4 if(str!=null){ 5 for(int i=0;i
用了StringBuffer,主要是考虑到大小毕竟不确定。 当然,也可以在原有字符串上修改,但是这必须考虑效率的问题,大概考虑一下,从前往后替换,每次操作后续字符串都得后移。 这样效率显然要慢很多。如果提前算好空间,然后从后往前找空格,这样貌似快很多。这个思路没有写,大家可以上网查一查,应该会有。 前面做这些题时都没有标上出处,真的烦。。牛客网又静态文件加载出错,感觉是DNS的问题,也没有解决,后面做题注释加上这些细节吧