• 字符串压缩



    package com.cn;

    /**
    * 题目描述
    * 利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。
    *
    * 给定一个string iniString为待压缩的串(长度小于等于10000),保证串内字符均由大小写英文字母组成,返回一个string,为所求的压缩后或未变化的串。
    *
    * 测试样例
    * "aabcccccaaa"
    * 返回:"a2b1c5a3"
    */
    public class StrLZP {
    public static void mkstrLZP() {
    //给定一个string iniString为待压缩的串(长度小于等于10000),保证串内字符均由大小写英文字母组成,返回一个string,为所求的压缩后或未变化的串。
    String str = "aabbcccdeeeefffzzmlnnnooooooohhhnnnnxxxlllannneabkfbabfal";
    String reslut = "";
    {
    int num = 0;//相邻的元素的个数做累加
    int temp = 0;
    for (int i = 0; i < str.length(); i++) {
    //设定当前起始的标记
    if (str.charAt(temp) == str.charAt(i)) {
    num++;//
    } else {
    reslut = reslut + String.valueOf(str.charAt(temp)) + num;
    num = 1;
    temp = i;
    }
    if (i == str.length() - 1) {
    reslut = reslut + String.valueOf(str.charAt(temp)) + num;
    }
    }

    System.out.println(reslut);
    }
    }
    public static void main(String[] args) {
    mkstrLZP();
    }
    }


    运行结果:

    不要因为怕被玫瑰的刺伤到你,就不敢去摘玫瑰。
  • 相关阅读:
    了解Django之前
    jQuery
    java模板模式项目中使用--封装一个http请求工具类
    spring boot项目配置RestTemplate超时时长
    TortoiseSVN-1.7.12.24070-x64-svn-1.7.9安装包和汉化包
    ubuntu16.04环境下在docker上部署javaweb项目简单案例
    工厂模式
    面向对象第四次博客
    面向对象第三次作业总结
    oo第二次博客
  • 原文地址:https://www.cnblogs.com/gccwelcome/p/12788146.html
Copyright © 2020-2023  润新知