[C/C++]OJ练习题: 压缩字符串&还原压缩字符串 [栈训练]

>题目

    给出一个定长的字符串,进行压缩或解压。压缩,给定一个最小需压缩长度。如当最小需压缩长度为3时,aaaabbc被压缩成a4bbc。还原时,同样以以上规则进行还原,如a5b3aba13b4被还原为aaaaabbbabaaaaaaaaaaaaabbbb。

    题目OJ数据保证只有'英文字母'会被压缩,'数字字符'作为压缩次数的数目。


>解题思路

    这个题目是一个非常明显的栈训练题。每次从输入字符串str中读取一位,若栈为空,则直接入栈;若不为空,则对栈中的数据做处理。

    没什么难度,用来入门程设训练中栈的思想其实还是不错的。


>代码

1 压缩

#include <iostream>
#define limit 3 // 最小需压缩长度
#define strMaxLen 100 //最大待压缩字符串长度 

using namespace std;

void print(int times, char c){
	if(times<limit){
		for(int i=0;i<times;i++){
			cout<
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值