笔试笔记————基本字符串压缩
来源:互联网 发布:音箱分频器设计软件 编辑:程序博客网 时间:2024/04/29 19:11
利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。
给定一个string iniString为待压缩的串(长度小于等于10000),保证串内字符均由大小写英文字母组成,返回一个string,为所求的压缩后或未变化的串。
测试样例
"aabcccccaaa"
返回:"a2b1c5a3"
"welcometonowcoderrrrr"
返回:"welcometonowcoderrrrr"
我的思路:从头开始计算比较相同的字符,相等则计数器+1,直到碰到不等的为止;下一次从源+计数器的值(即不等的下一位)开始比较,循环比较。最后再比较两字符串长度。
import java.util.*;public class Zipper { public String zipString(String iniString) { // write code here int l = iniString.length(); String str = new String(); for(int i = 0; i < l; i++){ int count = 0; for(int j = i; j < l; j++){ if(iniString.charAt(i) == iniString.charAt(j)){ count++; }else { break; } } str += iniString.charAt(i) + String.valueOf(count); i += count - 1; } if(iniString.length() >= str.length()){ return str; }else return iniString; }}
0 0
- 笔试笔记————基本字符串压缩
- 网易游戏笔试2015—字符串压缩
- 华为2014笔试编程题——字符串压缩
- 程序员面试金典——基本字符串压缩
- 笔试——字符串价值
- 58集团2017校园招聘笔试题——压缩输出字符串中最多的3个字符
- c/c++课堂笔记——字符串的基本操作
- 压缩感知基本概括——三大基本问题
- 360笔试题——处理字符串
- 笔试题——字符串编码
- 字符串压缩——C语言
- 华为机试——字符串压缩
- 华为面试题——压缩字符串
- 华为机试—字符串压缩
- 华为机试—字符串压缩
- 华为机试题—字符串压缩 c++
- 华为机试——字符串过滤&字符串压缩
- 9.1数组与字符串(四)——字符串压缩
- 一个简单的Oracle package Produce
- oracle数据库
- 二位数组详解以及二维数组的传递
- Codeforces 549B Looksery Party [贪心]
- 10个数的平均值
- 笔试笔记————基本字符串压缩
- Unity 游戏框架搭建 (八) 减少加班利器-QLog
- Web前端面试指导(三十九):new操作符具体干了什么呢?
- ooad设计模型
- javascript正则学习——给自己温故用
- 序列点
- 关于struts2.5.2 初步学习 遇到的几点改变以及使用通配符调用无效的问题
- C++控制输出的字体颜色
- QT数据库学习和以连接Access为例