剑指Offer_02_替换空格
2016-08-10 12:39
435 查看
题目描述
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。解题思路
直接使用Java API,使用String的replaceAll()方法。首先遍历字符串中的空格,然后新建一个char数组,大小时原来的字符串的长度 + 2 * 空格数,然后,从后往前遍历字符串,如果遇到非空格字符,则将其放入char数组最后未填充的位置,遇到空格则填充”%20”。
实现
调用Java API的实现public class Solution { public String replaceSpace(StringBuffer str) { return str.toString().replaceAll(" ","%20"); } }
第二种思路
public class Solution { public String replaceSpace(StringBuffer str) { int countSpace = 0; for (int i = 0; i < str.length(); i++){ if (str.charAt(i) == ' ') countSpace++; } char[] chars = new char[str.length() + 2*countSpace]; int index = chars.length - 1; for (int i = str.length() - 1; i >= 0; i--){ if(str.charAt(i) != ' '){ chars[index--] = str.charAt(i); }else { chars[index--] = '0'; chars[index--] = '2'; chars[index--] = '%'; } } return String.valueOf(chars); } }
相关文章推荐
- 剑指offer-02-将一个字符串中的空格替换成“%20”
- 替换空格 剑指offer 02
- 牛客网-剑指offer-02-替换空格
- 剑指offer-替换空格
- 【剑指offer】空格替换
- 剑指offer——面试题5:替换空格
- 剑指offer-面试题4 替换空格
- 牛客网-剑指Offer-替换空格
- 剑指Offer 2.替换空格
- 剑指offer-替换空格
- 【剑指offer】题目1510:替换空格
- 剑指offer面试题之替换空格
- 剑指offer中的面试题替换空格
- 剑指offer--面试题5:替换空格
- 剑指offer-----替换空格
- 【剑指offer】面试题4替换空格
- 剑指offer - 面试题4:替换空格
- 剑指Offer学习总结-替换空格
- 剑指offer-chapter2-面试题4-替换空格(java)
- 【剑指offer-解题系列(2)】替换空格