zoukankan      html  css  js  c++  java
  • 04:替换字符

    /**
     * 面试题4:替换字符
     * 请实现一个函数,将一个字符串中的空格替换成“%20”。
     * 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。
     */
    public class _04_String {
            public static void main(String[] args){
                Solution04 solution04 = new Solution04();
                StringBuffer sb=new StringBuffer();
                sb.append("we ");
                sb.append("are ");
                sb.append("happy");
                System.out.println(solution04.replaceSpace(sb));
            }
    }
    /**
     * 时间复杂度O(n)
     */
    class Solution04 {
        public String replaceSpace(StringBuffer str) {
            char[] youStr=str.toString().toCharArray();
            int length=youStr.length;
            int difflen=0; //计算空格的个数
            for(int i=0;i<length;i++){
                if(youStr[i] == ' '){
                    difflen++;
                }
            }
            int mylen=length+difflen*2;
            char[] myStr=new char[mylen];
            mylen--;
            for(int j=length-1;j>=0;j--){
                if(youStr[j]==' '){
                    myStr[mylen--]='0';
                    myStr[mylen--]='2';
                    myStr[mylen--]='%';
                }else{
                    myStr[mylen--]=youStr[j];
                }
            }
            return String.valueOf(myStr);
        }
    }
    
  • 相关阅读:
    总体设计
    需求分析概述
    毕业论文管理系统(面向对象方法)
    结构化与面向对象项目前期
    各人博客园地址链接
    软件测试
    读后感作业
    运行及总结
    图书馆管理系统面向对象编程
    图书管理系统设计类图
  • 原文地址:https://www.cnblogs.com/andy-zhou/p/6532004.html
Copyright © 2011-2022 走看看