编译原理
文章平均质量分 64
lcqrhel
linux自动化运维learner
展开
-
编译原理之语法分析(自顶向下分析)第四篇
文章目录一、自顶向下分析算法思想递归下降分析算法一、自顶向下分析算法思想语法分析:给定文法 G 和句子 S,回答S 是否能够从G推导出来?基本算法思想:从G的开始字符处罚,随意推导出某个句子t,比较t和S若t==s,则回答“是”若他!=s ,多推导几次才能判断为了让编译高效,需要线性时间的算法,避免回溯,引出递归下降分析算法和LL(1)分析算法递归下降分析算法也叫预测分析分析高效(线性时间)容易实现(方便手工编码)错误定位和诊断信息准确GCC4.0,LLVM都在使用算法基本思原创 2021-04-26 10:19:34 · 225 阅读 · 0 评论 -
二叉树的遍历规则
文章目录二叉树的遍历规则1.前序遍历2.中序遍历3.后序遍历二叉树的遍历规则今天看了一些关于平和查找二叉树的问题,顺便也复习了一下二叉树的遍历规则,写一下学习文档。树的遍历顺序大体分为三种:前序遍历(先根遍历、先序遍历),中序遍历(中根遍历),后序遍历(后根遍历)。如图所示二叉树:1.前序遍历前序遍历可以记为根左右,若二叉树为空,则结束返回。前序遍历的规则:(1)访问根节点(2)前序遍历左子树(3)前序遍历右子树这里需要注意:在完成第2,3步的时候,也是要按照前序遍历二叉树的规原创 2021-04-25 11:19:24 · 475 阅读 · 0 评论 -
编译原理之语法分析(第三篇)
语法分析分析树、二义性(表达式文法的重写)原创 2021-04-25 10:52:16 · 406 阅读 · 0 评论 -
编译原理之正规化到最小化DFA(第二篇)
文章目录正规化到最小化DFA二、子集构造法三、DFA最小化正规化到最小化DFA本文转自点击此链接整体的步骤是三步:一、先把正规式转换为NFA(非确定有穷自动机)二、在把NFA通过“子集构造法”转化为DFA三、在把DFA通过“分割法”进行最小化一、正规式转换为NFA第一步很简单,就是反复运用下图的规则:给出一个例题,来自Google book。本文主要根据这个例题来讲二、子集构造法NFA转换为DFA——子集构造法三、DFA最小化Hopcroft算法...原创 2021-04-25 09:59:19 · 418 阅读 · 0 评论 -
编译原理之正则表达式RE和词法分析NFA(第一篇)
编译器,词法分析器,NFA,DFA原创 2021-04-23 16:23:46 · 1307 阅读 · 0 评论