博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
华为招聘机试整理10:实现字符串中子字符串的替换
阅读量:6943 次
发布时间:2019-06-27

本文共 1224 字,大约阅读时间需要 4 分钟。

华为招聘机试整理10:实现字符串中子字符串的替换

题目:子字符串的替换

编写一个字符串替换函数。如函数名为 StrReplace(char* strSrc, char* strFind, char* strReplace)。strSrc为原字符串,strFind是待替换的字符串。strReplace为替换字符串。

举个直观的样例吧。如:“ABCDEFGHIJKLMNOPQRSTUVWXYZ”这个字符串,把当中的“RST”替换为“ggg”这个字符串。结果就变成了:
ABCDEFGHIJKLMNOPQgggUVWXYZ
*题目分析:
这道题主要是考察怎样在一个非常长的字符串中去寻找目标子字符串,而且进行替换,这个用字符数组或者指针都非常好完毕。
算法思路:
①对长字符串进行循环。找出目标子字符串的首字符位置
②对目标子字符长度进行循环,找出目标子字符的尾字符。
③用替换字符一一替换。

==========================================================================

參考代码:

//子字符串的替换.cpp//2014.7.11 hepanhui#include 
#include
const int maxn = 100;using namespace std;void StrReplace(char* strSrc, char* strFind,char* strReplace){ int len1 = strlen(strSrc); int len2 = strlen(strFind); for(int i = 0; i < len1; i++) { if(strSrc[i] == strFind[0]) { for(int j = 0; j < len2; j++) { if(strSrc[i + j] == strFind[j]) { strSrc[i + j] = strReplace[j]; } } } }}int main(){ char strSrc[maxn]; char strFind[maxn]; char strReplace[maxn]; cin >> strSrc >> strFind >> strReplace; StrReplace(strSrc, strFind,strReplace); cout << strSrc << endl; return 0;}

转载地址:http://djinl.baihongyu.com/

你可能感兴趣的文章
点播转码相关常见问题及排查方式
查看>>
gc.collect()清内存
查看>>
如何在HTTPS里调用HTTP资源不出现提示框
查看>>
Jenkins 2.173 发布,开源持续集成引擎
查看>>
《文科生数据科学上手指南》分享
查看>>
PostgreSQL json 索引实践 - 检索(存在、包含、等值、范围等)加速
查看>>
第12章—使用NoSQL数据库—使用MongoDB+Jpa操作数据库
查看>>
ListView实现物流追踪
查看>>
05.Eclipse下Ndk开发(增量更新)
查看>>
TP5使用二维码PHP QR Code生成带LOGO和不带LOGO的二维码
查看>>
报表查询条件的正确打开方式,看到最后不禁会心一下
查看>>
捕获未处理的Promise错误
查看>>
mac-switch-meta.el
查看>>
spring源码分析(一)资源文件的加载
查看>>
基于卷积神经网络的以图搜图算法实现
查看>>
同步与异步的区别
查看>>
SQL获取上月第一天和最后一天
查看>>
填报表更新时去除重复数据
查看>>
淘宝分词怎么查看,详谈淘宝分词原则
查看>>
对于sqli-labs基础篇全程使用sqlmap不用手工注入(七夕礼物!!!)
查看>>