HWOJ 实现一个听高级的字符匹配算法
来源:互联网 发布:禅道数据库账号密码 编辑:程序博客网 时间:2024/05/20 15:36
HWOJ 实现一个听高级的字符匹配算法
题目:
实现一个挺高级的字符匹配的算法
测试样例:
题目分析:
算法思路:
①创建一个长度为256的数组,哈希表,遍历较长的字符之后将对应出现的字符,将哈希表的键值写成1
②重新遍历第二个字符串,我们看看对应哈希表的键值,如果为0,说明字符串1有些字符在字符串2中找不到,则说明匹配不成功否则成功。
学习笔记:
这道题其实就是要我们找出是否字符串包含另外一个字符串,我们算法思路是先用哈希表遍历较长的字符,之后我们在重新遍历需要匹配的字符,如果存在0,则说明不匹配,否则匹配。
===============================================================================
参考代码:
//.cpp#include <iostream>using namespace std;//字符匹配和谐系统bool is_contain(char *src, char *des){ bool is_pipei = true; //创建一个哈希表,并初始化 const int tableSize = 256; int hashTable[tableSize]; int len1,len2,i; for(i=0; i< tableSize; i++) hashTable[i] = 0; len1 = strlen(src); for(i=0; i< len1; i++) hashTable[src[i]] = 1; len2 = strlen(des); for(i=0; i< len2; i++) { if(hashTable[des[i]] == 0) is_pipei = false; //匹配失败 } return is_pipei; //匹配成功}int main(void){ char str1[1000],str2[1000]; cout << "Enter two number: "; cin >> str1 >> str2; bool is_pipei = is_contain(str1, str2); if(is_pipei) cout << "匹配" << endl; else cout << "匹配不成功" << endl; return 0;}
——To_捭阖_youth
0 0
- HWOJ 实现一个听高级的字符匹配算法
- 哈希表对字符串的高效处理3:实现一个听高级的字符匹配算法
- 33.实现一个挺高级的字符匹配算法
- 27. 微软面试题:实现一个挺高级的字符匹配算法
- 实现一个比较高级的字符匹配算法,即一串很长的字符,要求找到符合要求字符的字符串
- 实现一个比较高级的字符匹配算法,即一串很长的字符,要求找到符合要求字符的字符串
- HWOJ 计算字符的个数
- HWOJ 在一个字符中删除第二个字符出现过的所有字符
- 强大的和谐--高级的字符匹配算法
- 实现一个字符匹配
- 实现一个挺高级的字符匹配算法: 给一串很长字符串,要求找到符合要求的字符串,例如目的串:123 1******3***2 ,12*****3 这些都要找出来
- 实现一个挺高级的字符匹配算法: 给一串很长字符串,要求找到符合要求的字符串,例如目的串:123 1******3***2 ,12*****3 这些都要找出来
- <仅是自己做笔记。。。系列15>实现一个挺高级的字符匹配算法: 给一串很长字符串,要求找到符合要求的字符串,例如目的串:123 1******3***2 ,12*****3这些都要找出来
- 实现一个挺高级的字符匹配算法: 给一串很长字符串,要求找到符合要求的字符串,例如目的串:123 1******3***2 ,12*****3这些都要找出来
- 【HWOJ】字符串最后一个单词的长度
- C++实现Kmp字符匹配算法的优化版
- HWOJ 字符统计
- HWOJ 删除重复字符
- 手动代码创建Activity
- android Splashy Flash小游戏
- 极品特效HTML5动画推荐,不看的程序员后悔一辈子
- 编程题目:PAT 1006. 换个格式输出整数 (15)
- 汉诺塔回顾
- HWOJ 实现一个听高级的字符匹配算法
- Ping工具
- 编程题目:浙大PAT (Basic Level) Practise (中文)25道题目合集
- CO常用TCODE
- ArcEngine02
- HWOJ 判断两个单词是否为变位词
- javascript字面量
- 树的实现与操作(C语言实现)
- 工作笔记