从第一字符串中删除第二个字符串中所有的字符,例如第一个字符串“We are students.”,第二个字符串“aeiou”,则删除后的结果为“W r stdnts.”。通过文章知道,我们可以通过hash表来统计第二个字符串中的字符,然后再逐一遍历第一个字符,如果在hash表里面存在该字符,就进行删除操作。代码如下:
#include "stdafx.h"
#include "iostream"
using namespace std;
//在第一个字符串中删除在第二个字符串中出现的所有字符
void deleteFirstInSecond(char* first,const char* second)
{
if(first==NULL)
return;
const int tableSize = 256;
unsigned int hashTable[tableSize];
for(unsigned int i = 0; i < tableSize;i++)
hashTable[i] = 0