博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
字符串删除指定字符
阅读量:4948 次
发布时间:2019-06-11

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

一、算法描述

    给定一个字符串和模式字符串,要求将出现在模式字符串的字符在原字符串中删除。

 

二、算法思路

    从题面理解,常规思路是遍历原字符串和模式字符串,将原字符串的每个字符和模式串的每个字符比较,如果比较相等,则不输出,其时间复杂度为O(m*n),m和n各自为字符串和模式字符串的长度;另一种高效的思路是以空间换时间,借助hash数组,标记模式字符串中每个出现的字符,hash数组以字符的ascii码值为下标,所以其大小一般为256,然后遍历原字符串,判断字符是否在hash数组中,不在的话则输出。

 

三、算法代码

    下面给出这种方法的代码

#include 
#include
using namespace std;//o(m*n),m=>string length, n==>pat lengthvoid del_pat_char(char *s,int n,const char *pat){ int i=0,j=0; int lp=strlen(pat); for(i=0;i
=lp) { cout<

转载于:https://www.cnblogs.com/ballwql/p/4946339.html

你可能感兴趣的文章
assert 的作用是什么?
查看>>
收藏夹(持续更新)
查看>>
iOS中的#import和class区别
查看>>
节约内存,请使用标签页管理工具:onetab、better onetab
查看>>
jQuery中的事件与动画
查看>>
页面加载骨架
查看>>
关于android系统不关屏设置
查看>>
SONY VPCS138EC降级安装XP
查看>>
[luogu4201][bzoj1063]设计路线【树形DP】
查看>>
手机抓包-手机劫持域名到指定服务器
查看>>
被放逐的皇后 金建云
查看>>
Javascript 有用参考函数
查看>>
点群的判别(三)
查看>>
GNSS 使用DFT算法 能量损耗仿真
查看>>
网页抓取 总结
查看>>
【vue】vue中v-charts的使用
查看>>
【转】Simulink模型架构指导
查看>>
MYSQL数据库的导出的几种方法
查看>>
SQL Server-5种常见的约束
查看>>
硬件之美
查看>>