笔试系列-1-华为机试第二题
来源:互联网 发布:支付宝如何解绑淘宝 编辑:程序博客网 时间:2024/05/13 10:18
2014年华为机试题目2:
9月5日,华为2014校园招聘的机试题目
通过键盘输入一串小写字母(a~z)组成的字符串。请编写一个字符串压缩程序,将字符串中连续出席的重复字母进行压缩,并输出压缩后的字符串。
压缩规则:
1、仅压缩连续重复出现的字符。比如字符串"abcbc"由于无连续重复字符,压缩后的字符串还是"abcbc"。
2、压缩字段的格式为"字符重复的次数+字符"。例如:字符串"xxxyyyyyyz"压缩后就成为"3x6yz"。
要求实现函数:
void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr);
输入pInputStr: 输入字符串lInputLen: 输入字符串长度
输出 pOutputStr: 输出字符串,空间已经开辟好,与输入字符串等长;
注意:只需要完成该函数功能算法,中间不需要有任何IO的输入输出
示例
输入:“cccddecc” 输出:“3c2de2c”
输入:“adef” 输出:“adef”
输入:“pppppppp” 输出:“8p”
#include <iostream>#include <string>using namespace std;void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr);int main(){const int ArSize=20; char Input[ArSize]; cout<<"请输入字符串:\n";cin.getline(Input,20);//char *Input = "abbbccc";int str_len = strlen(Input);char *Output = new char[str_len]();//新开辟空间,并对于新空间进行赋值stringZip(Input, str_len, Output);cout<<"进行压缩之后的结果:\n";cout<<Output<<endl; return 0;}void stringZip(const char *pInputStr, long lInputLen, char *pOutputStr){int count=1;//temp = *pInputStr;//取第一个字符for(int i=0; i< lInputLen; i++){if (pInputStr[i] == pInputStr[i+1]){count++;}else{if(count>1){char a = 1;a = count+'0';*(pOutputStr++)= count+'0';////cout<<*pOutputStr<<endl;//测试赋值的情况,//pOutputStr++;*(pOutputStr++) = pInputStr[i];//cout<<*pOutputStr<<endl;//测试赋值的情况,}else{*(pOutputStr++) = pInputStr[i];}count = 1;//重新置为1!}}//pOutputStr = '\0';}
0 0
- 笔试系列-1-华为机试第二题
- 华为笔试题1
- 华为笔试题1
- 华为模拟题第二题--Google校招笔试题
- 华为2016年秋招笔试编程题(第二题)
- 华为笔试题(1)
- 华为笔试题1-2016
- 华为笔试题(1)
- 华为机试第二篇
- 华为Java笔试题笔试
- 华为C/C++笔试题(附答案,华为面试题系列)
- 华为C/C++笔试题(附答案,华为面试题系列)
- 华为C/C++笔试题(附答案,华为面试题系列)
- 华为C/C++笔试题(附答案,华为面试题系列)
- 【笔试机试】华为合集
- 华为机考笔试题-删数
- 华为机考笔试题-字符集合
- 华为2014暑期实习生招聘机试第二题
- poj2013
- 旅行一条龙服务 【在线旅游OTA产品相关性分析】
- 八大直属独立公司
- hdu 1171 Big Event in HDU(多重背包转化为01背包)
- JSP基础---pageContext对象
- 笔试系列-1-华为机试第二题
- B. Very Beautiful Number codeference 非常考验数学思维的一个问题
- Hi3716C Android SDK编译说明
- HDU2066_一个人的旅行(Dijkstra最短路)
- Java异常捕获之try-catch-finally-return的执行顺序
- 【Spring】IOC核心源码学习(二):容器初始化过程
- 黑马程序员-----Java基础学习异常
- variable 'std:ofstream' has initializer but incomplete type 错误
- 假删除的思想