- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
bm模式匹配算法(BM pattern matching algorithm)
bm模式匹配算法(BM pattern matching algorithm)
*
Function: int* MakeSkip (char * int)
Objective: to do preprocessing according to the bad character rule, the establishment of a bad character
Parameter:
Ptrn = string P
PLen = P pattern string length
Return:
Table int* - bad character
* /
Int* MakeSkip (char *ptrn, int pLen)
{
Int i;
/ / for the establishment of bad character, apply 256 int space
/*PS: reason to apply for 256, because a character is 8,
So the 8 characters might have 2 or 256 different situations.
Int = *skip (int*) malloc (256*sizeof (int));
If (skip = NULL)
{
Fprintf (stderr, malloc failed!);
Return 0;
}
/ / initialize the bad character table, 256 units are all initialized to pLen
For (I = 0; I 256; i++)
{
* (skip+i) = pLen;
}
/ / given in the table need an assignment unit assignment, does not appear in the pattern string character is no longer the assignment
While (pLen! = 0)
{
* (skip+ (unsigned char) *ptrn++ = pLen--);
}
Return skip;
}
*
Function: int* MakeShift (char * int)
Objective: according to the good suffix rule preprocessing, establish a good suffix table
Parameter:
Ptrn = string P
PLen = P pattern string length
Return:
Int* - the good suffix table
* /
Int* MakeShift (char* ptrn, int pLen)
{
For the good suffix list for the pLen / int space
Int = *shift (int*) malloc (pLen*sizeof (int));
Int *sptr = Shift + pLen - 1; / / convenience to the good suffix table assignment index
Char *pptr = ptrn + pLen - 1; / / record suffix table boundary position indicator
Char c;
If (shift = NULL)
{
Fprintf (stderr, malloc failed!);
Return 0;
}
* (C = ptrn + pLen - 1); / / the last character of the pattern string to save, because it is used repeatedly
*sptr = 1; / / to the last character as the boundary, determine the moving distance of 1
Pptr--; / / boundary moves to the last second characters (this sentence I add up, because I do not feel that there will be added to BUG, we try to abcdd, that is the end of the two repeated situation)
While (sptr--! = shift)
您可能关注的文档
- 823《高分子化学与物理》考试大纲(823 high polymer chemistry and physics examination outline).doc
- 80年代歌曲(80s song).doc
- 7表格标记(7 table markings).doc
- 823 ic卡读写系统的软件系统(823 the software system of IC card reading and writing system).doc
- 82个笑话概括校园生活,学校啊~你得到了我的人却得不到我的心(82 jokes summarize campus life, school ah ~ you get my people, but not my heart).doc
- 80后小时候的经典改编儿歌(80's childhood classic adaptation nursery rhyme).doc
- 86-科学技术成果鉴定证书(86- certificate of scientific and technological achievements).doc
- 866-南京市优秀专利奖(866- Nanjing excellent Patent Award).doc
- 80后跳槽约三成管理嫌薪酬低(After 80 job hopping about 30%, management too low salary).doc
- 80天冲刺日语能力考试2级计划(80 day sprint Japanese Proficiency Test Level 2 program).doc
- 10《那一年,面包飘香》教案.docx
- 13 花钟 教学设计-2023-2024学年三年级下册语文统编版.docx
- 2024-2025学年中职学校心理健康教育与霸凌预防的设计.docx
- 2024-2025学年中职生反思与行动的反霸凌教学设计.docx
- 2023-2024学年人教版小学数学一年级上册5.docx
- 4.1.1 线段、射线、直线 教学设计 2024-2025学年北师大版七年级数学上册.docx
- 川教版(2024)三年级上册 2.2在线导航选路线 教案.docx
- Unit 8 Dolls (教学设计)-2024-2025学年译林版(三起)英语四年级上册.docx
- 高一上学期体育与健康人教版 “贪吃蛇”耐久跑 教案.docx
- 第1课时 亿以内数的认识(教学设计)-2024-2025学年四年级上册数学人教版.docx
最近下载
- 7.2 类比推理及其方法-高中政治课件 (统编版选择性必修3).pptx VIP
- 《数学物理方程-福州大学-江飞》作业chapter1.pdf VIP
- 重庆渝北中交·中央公园 C96, C98-1 地块山地新中式商业街项目 GOA.pdf
- 2024年江苏省高考物理真题试卷含答案.pdf VIP
- 《数学物理方程-福州大学-江飞》数学物理方程A.doc VIP
- 《数学物理方程-福州大学-江飞》作业chapter2.ppt VIP
- 《数学物理方程-福州大学-江飞》第四章.doc VIP
- 《数学物理方程-福州大学-江飞》数学物理方程A答案.doc VIP
- 2023年辽宁省检察系统招聘聘用制书记员考试真题及答案.docx VIP
- 2024年高考真题——物理(河北卷)含答案.pdf VIP
文档评论(0)