汤普森构造法

✍ dations ◷ 2025-07-12 09:01:42 #汤普森构造法

汤普森构造法在计算机科学中是指一个能将正则表达式转化为一个与之等价的非确定有限状态自动机(NFA)的算法。算法得到的NFA可以在编程中用于匹配一个正则表达式,这也是正则表达式引擎实现的基本思路之一。

正则表达式和非确定有限状态自动机是形式语言的两种不同的抽象表达方式。在诸如文本编辑器的高级“查找和替换”以及许多编程语言中,人们都习惯使用正则表达式来表示字符串的匹配模式。然而,当计算机执行匹配程序时,NFA却是更加适合的一种格式。因此,汤普森构造法有着重要的应用价值,它实际上可以视作正则表达式到NFA的一个编译器。而从理论角度上来说,该算法实际上是正则表达式和NFA等价性证明的一部分——事实上,这两种表述形式本质上都对应着相同的语言,即正则语言。

在应用中,算法得到的NFA可以再次通过幂集构造和最小化的过程得到一个对应的最简的确定有限状态自动机(DFA),进而用于匹配正则表达式。但是有些情况下也会直接使用对应的NFA。

算法通过递归地将一个正则表达式划分成构成它的子表达式,在得到每个子表达式对应的NFA之后,根据子表达式之间的运算关系和一系列规则构造表达式自身对应的NFA。具体来说,这套构造规则如下所示 :

对于正则表达式为ε或者只由一个符号构成的情况,则无需继续递归,对应的NFA可以直接由下列规则给出:

空表达式ε直接转化为:

直接转化为:

|可以转化为:

可以直接到达()或()的初态。而()或()原来的终态也可以通过ε转移直接到达整个NFA的新终态。

连接表达式可以转化为:

()的初态成为新的NFA的初态。 原来()的终态成为()的初态。而原来()的终态成为新的NFA的终态。

Kleene*闭包*可以转化为:

()连接起来的ε转移使得可以选择经过或者不经过子表达式。而从()的终态到初态的ε转移使得可以重复任意多次。

相关

  • 钢筋混凝土钢筋混凝土(英语:Reinforced Concrete,Ferroconcrete,RC),工程上常简称为钢筋砼或钢混,是指通过在混凝土中加入钢筋、钢筋网、钢板或纤维而构成的一种组合材料,两者共同工作从而改善
  • 日行性昼行性是指动物或植物在白昼比较活跃,在夜晚有一段睡眠或是不活跃之时间,与夜行性相反。昼行性动物实际的活跃时间会随许多环境因素而变化,例如温度、可用视觉找到食物的能力,被
  • 博美犬博美犬(英语:Pomeranian)是狐狸犬家族中最小的犬种,其名出自原产地波美拉尼亚,在波兰西北部和德国东北部沿海交界地。博美犬因娇小的体型而归类为玩赏犬类。依据美国育犬协会的育
  • 多特蒙德数据库多特蒙德数据库(英语:Dortmund Data Bank,缩写为DDB)是收录热力学与热物理数据的事实数据库。其主要用途为提供过程模拟(英语:process simulation)所需之数据,而这些实验数据是设计
  • 奚玉书奚玉书(1902年3月6日-1982年4月22日),名毓麟,字玉书,以字行,上海人,家住虹口之吴淞路,中国会计学家、教育家、会计实务专家。是民国时期四大会计师事务所之一的上海公信会计师事务所
  • 富康年富康年(1964年3月-),甘肃民勤人,汉族,中国共产党党员‎。中华人民共和国政治人物、第十三届全国人民代表大会甘肃省代表。2018年,富康年被选为甘肃省出席第十三届全国人民代表大会
  • 纤维素单胞菌科 Salam et al. 2020纤维素单胞菌科(学名:)为放线菌纲微球菌目的一科细菌。此科的模式属为纤维素单胞菌属()。
  • 1948年世界乒乓球锦标赛1948年世界乒乓球锦标赛是第十五届世界乒乓球锦标赛,于1948年2月4日至11日在英国伦敦温布利举行。东道主英格兰队在该届比赛中获得最多的金牌。
  • 阿尔曼蚁科查看内文阿尔曼蚁科()是膜翅目蚁总科()下一个已灭绝的类群,其化石出土于亚洲及非洲的沉积层,年代为白垩纪,形似蚂蚁。某些学者认为本科应为蚁科的基群,作为蚁科下的亚科阿尔曼蚁亚科();某些学者则将本类群作为蚁总科下的一个科。本科7属13种。某些学者认为阿尔曼蚁科是蚁科的基群,蜂蚁亚科则是其他蚁科的姊妹群;某些学者则认为阿尔曼蚁科是类似蚂蚁的蜂类,可能是蚁科的姊妹群。古昆虫学家 Engel 和 Grimaldi 认为阿尔曼蚁科可能为并系群,此看法与首次描述该科的俄国古昆虫学家 Dlussky 的看法相悖,Dl
  • 米芙·李奇米芙·李奇(英语:Meave Leakey 1942年7月28日-)是一位英国古人类学家。在石溪大学工作,并且是图尔卡纳盆地研究所(Turkana Basin Institute)上新世更新期研究的协调员。她研究早期人类的演化,并在图尔卡纳盆地进行了广泛的野外研究,曾命名肯尼亚平脸人,在图尔卡纳湖出土湖畔南方古猿化石。她拥有哲学博士学位和科学博士学位。丈夫是英国古生物学家路易斯·李奇与玛丽·李奇之子理查德·李奇。