栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java解压缩算法的简单字符串处理

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java解压缩算法的简单字符串处理


public class Solution {
    
    public static String compress (String str) {

        // write code here
        //1.定义返回结果,组装的变量(计算左边字符;计算右边字符;计算结果)
        String result = "";
        String optStr="";
        String optLeftStr="";
        String optRightStr="";

        //2.定义本次计算的临时变量,
        String optTemp = "";
        String cycle = "";
        String optNumberStr="";
        //3.计算中间的字符串
        //寻找第一个]的位置
        int optRightPoint=str.indexOf("]");
        optTemp = str.substring(0,optRightPoint);
        int optPoint = optTemp.lastIndexOf("|");

        int optPointLeft = optTemp.lastIndexOf("[");
        optLeftStr = optTemp.substring(0,optPointLeft);
        optRightStr = str.substring(optRightPoint+1,str.length());
        optNumberStr = optTemp.substring(optPointLeft+1,optPoint);

        cycle = optTemp.substring(optPoint+1,optRightPoint);
        int cycleTimes = Integer.valueOf(optNumberStr);
        for(int i =0 ;i < cycleTimes;i++){
            optStr = optStr + cycle;
        }
        result= optLeftStr +optStr +optRightStr;
        System.out.print("-->"+result);
        if(result.contains("]")){
            compress(result);
        }
        return result;
    }

    public static void main(String[] args) {
        String input = "HG[3|B[2|CA]]F";
        System.out.print(input);
        Solution.compress(input);
//        String str =  "123456";
//        int point = str.indexOf("3");//0开头
//        String subString = str.substring(1,6);
//        System.out.println(subString);
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/490675.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号