Leetcode:面试题 01.06. 字符串压缩
题目:
字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)。
示例1:
输入:"aabcccccaaa"
输出:"a2b1c5a3"
示例2:
输入:"abbccd"
输出:"abbccd"
解释:"abbccd"压缩后为"a1b2c2d1",比原字符串长度更长。
AC代码:
class Solution {public String compressString(String S) {if(S.length() <= 1)return S;StringBuilder ans = new StringBuilder();int count = 0;for(int i=1;i<S.length();++i){if(S.charAt(i) == S.charAt(i - 1)){++count;}else{ans.append(S.charAt(i - 1));ans.append(count + 1);if(ans.length() >= S.length())return S;count = 0;}}ans.append(S.charAt(S.length() - 1));ans.append(count + 1);if(ans.length() >= S.length())return S;return ans.toString();}
}
Leetcode:面试题 01.06. 字符串压缩相关推荐
- Leetcode 面试题 01.06.字符串压缩(Compress String LCCI)
Leetcode 面试题 01.06.字符串压缩 1 题目描述(Leetcode题目链接) 字符串压缩.利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能.比如,字符串aabccccc ...
- LeetCode 面试题 01.06. 字符串压缩 (双指针)
面试题 01.06. 字符串压缩 题意: 压缩字符串,如:"aabbccc"压缩为"a2b2c3",如果压缩后的字符串长度大于等于原字符串,则返回原来的字符串. ...
- 程序员面试金典 - 面试题 01.06. 字符串压缩(字符串)
1. 题目 字符串压缩.利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能.比如,字符串aabcccccaaa会变为a2b1c5a3.若"压缩"后的字符串没有变短,则返 ...
- 面试题 01.06. 字符串压缩
2020-03-16 1.题目描述 字符串压缩 2.解题思路 用一个字符变量c存放第一个不同的字符,然后遍历其后面的字符,如果相同则cnt加一,否则更新c 以及cnt,注意这里的cnt是可能大于10的 ...
- 程序员面试金典面试题 01.06. 字符串压缩
前言 本系列文章为<程序员面试金典>刷题笔记. 题目位置:字符串压缩 题集:程序员面试金典 题目 字符串压缩.利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能.比如,字符串a ...
- 文巾解题 面试题 01.06. 字符串压缩
1 题目描述 2 解题思路 也很简单,从头到尾遍历一遍即可,先建立一个表示出现次数的字符串tmp,然后返回tmp和S中短的那个 时间复杂度 O(n),空间复杂度O(n) class Solution: ...
- leetcode每日一题--前缀树;前缀哈希;深搜;面试题 08.04. 幂集;648. 单词替换面试题 01.09. 字符串轮转;剑指 Offer II 062. 实现前缀树
leetcode每日一题 ps:今天的每日一题没意思,简单的模拟,自己换一道 面试题 08.04. 幂集 幂集.编写一种方法,返回某集合的所有子集.集合中不包含重复的元素. 说明:解集不能包含重复的子 ...
- 面试题 01.09. 字符串轮转
面试题 01.09. 字符串轮转 字符串轮转.给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成(比如,waterbottle是erbottlewat旋转后的字符串). 示例1: 输入:s ...
- LeetCode 面试题 03.06. 动物收容所
文章目录 一.题目 1.题目描述 2.基础框架 3.原题链接 二.解题报告 1.思路分析 2.时间复杂度 3.代码详解 1)队列的增删改查 2)源码 三.本题小知识 四.加群须知 一.题目 1.题目描 ...
最新文章
- nginx 反向代理和负载均衡策略实战案例
- PDF密码去除常用工具
- Leetcode--304. 二维区域和检索
- gcc g++ 支持c++11编译的标准和区别
- 计算机图形学入门:什么是光线追踪?
- Matlab fspecial滤波函数
- python爬虫基础爬取用户头像实战
- loj10102 旅游航道
- USB:Type-A、Type-B、Type-C、miniUSB、microUSB接口类型区分
- iOS 谷歌地图及路线规划
- 计算机发展史观后感50字,《计算机:一部历史》读后感_1300字
- 重邮python实验课之华氏温度转摄氏温度速查表
- 何为挂载(mount)?
- IPS入侵防御系统、IDS入侵检测系统
- 我们为什么来到这个世界上?--黄金雄(杰西)
- 专业的在线考试系统,快考题,全面聚集多场景考试业务
- linux下安装apache(详细教程)
- 毒液:致命守护者HDTC1080清晰英语中字
- LeetCode——面试题 10.11. 峰与谷(JAVA)
- 天猫schema模式下发布商品