用于计算上下文无关语法的 FIRST 和 FOLLOW 集的算法 [关闭]

2024-02-13

我需要一种算法来计算语法的 FIRST 和 FOLLOW 集。

是否有一个简单的算法或简单的代码来计算这些?


大多数编译器教科书和解析算法书籍中都讨论了计算 FIRST 和 FOLLOW 集的标准算法。如果您正在学习的课程涵盖了这一主题,并且没有提供有关该主题的指定阅读材料或材料,我会感到惊讶。

我教授了一门关于编译器构造的课程,并且有一些可能在这里有用的讲座幻灯片。您可能想查看这些幻灯片中的幻灯片 303-304 有关 LL 解析 http://www.stanford.edu/class/archive/cs/cs143/cs143.1128/lectures/03/Slides03.pdf对于计算 FIRST 集的算法和这些幻灯片中的第 32 张关于 LL 解析的幻灯片 http://www.stanford.edu/class/archive/cs/cs143/cs143.1128/lectures/04/Slides04A.pdf用于计算 FOLLOW 集的算法。

希望这可以帮助!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于计算上下文无关语法的 FIRST 和 FOLLOW 集的算法 [关闭] 的相关文章

随机推荐

  • 流音频运行 underlock

    我正在尝试使用在锁定屏幕下播放流音频PhoneApplicationService Current ApplicationIdleDetectionMode IdleDetectionMode Disabled 使用简单的 mp3 文件一切
  • Android的RelativeLayout和wrap_content的高度?

    我正在尝试选择 ListActivity 类似于用于向启动器屏幕添加快捷方式的选择 我已经滚动了自己的页眉和页脚 我希望在屏幕上时将其 粘在 视图的顶部和底部 为了做到这一点 我使用了RelativeLayout 将标题设置为停靠在顶部 将
  • 如何创建隐藏多层向量并将其公开为单个范围的 Boost.Range?

    我有一个无法修改的遗留类层次结构 由于外部库的要求 我需要为 Line 和 Ring 定义 Boost Range 其中两者仅在单次运行中公开点 即 对于 Line 和 Ring 它应该是点的 Boost Range 伪代码来说明 Line
  • 使用 jQuery 循环并获取 JSON 数组的键/值对

    我希望循环遍历 JSON 数组并显示键和值 它应该是以下帖子的简化版本 但我似乎语法不正确 带有 JSON 数组的 jQuery each 循环 https stackoverflow com questions 3030321 jquer
  • MySql.Data.MySqlClient.MySqlConnection.Open() 花费很长时间

    我有一个 mvc net4 网站 连接到 mysql 在页面加载时我运行一个查询 这是不可避免的 MySql Data MySqlClient MySqlConnection Open 最坏情况下打开速度非常慢 需要 15 秒 仅当我长时间
  • 如何使用带有 DLL 的 Automation Anywhere 在 SAP 中获取带有属性的 IDObject?

    我正在使用 Automation Anywhere 本身提供的 SAP DLL 在 SAP with Automation Anywhere 上开发自动化流程 我需要找到具有指定属性的 IDObject 来单击 获取指定元素的值 但似乎没有
  • 如何在 Xcode 项目中启用或禁用特定库或 SDK 的位码

    我的项目中有很多外部库和 SDK 而且有些不支持bitcode 所以我必须禁用bitcode 但有些图书馆喜欢解析崩溃报告 确实需要它来表示崩溃报告 我想禁用和启用bitcode对于特定的库 我怎样才能做到这一点 有可能吗 Thanks 你
  • 无法从 Java 中的 cookie 获取值。值包含逗号。

    我在从包含逗号的 cookie 中获取值时遇到问题 它返回的不是完整字符串 而是被截断到第一个逗号的字符串 例如 cookie value var1 var2 var3 String cookieVal cookie getValue co
  • 在一列数字中,找到最接近某个目标值的值

    假设我在列中有一些数字数据 例如 11 100000 36 829657 6 101642 11 400000 36 402069 5 731998 11 700000 35 953025 5 372652 12 000000 35 482
  • SyndicateFeed 将命名空间前缀从 a10 更改为atom

    我正在使用 System ServiceModel Synmination SynspirationFeed 创建一个 rss 提要 从中我得到以下内容
  • 具有多个资源的 Kubernetes 应用程序单个 YAML

    目前我使用 docker compose 来安排我的应用程序 该应用程序由 3 个 dockerimages 一个 postgresql 数据库和 2 个 Wildfly 应用程序服务器 前端 ui 后端 组成 My docker comp
  • jquery Draggable:如何限制可拖动区域?

    我有一个可拖动的对象 div 和一些可放置的对象 表TD 我希望用户将我的可拖动对象拖动到这些可放置 TD 之一 我以这种方式启用可拖动和可放置 draggable draggable droppable droppable 问题是 用户可
  • C++ 中的静态全局变量

    我想通过 malloc 方法创建一个整数数组 我希望这个数组是全局的并且可以在我的程序中的任何地方使用 我将代码放入一个头文件中 如下所示 static int pieces 然后我有一个函数可以用我想要的数字填充它 该函数位于命名空间中
  • 链接到网页的特定部分

    如何创建指向我无法控制的另一个网站上的长网页的一部分的链接 我认为您可以在链接末尾使用 partofpage 的变体 有什么建议么 只需附加一个 随后是该人的 ID a 标签 或其他 HTML 标签 例如 section 你想要达到的目标
  • 聚合物和 PHP

    你好 我刚刚开始学习聚合物 我使用 PHP 收集数据如下 我可以将其嵌入到 DIV 中并显示一些数据 但我想将这段代码放入带有我可以导入的参数的 Polymer 元素中 并将 json 数据也放入我可以用来填充页面的外部 Polymer 元
  • Enterprise Library 5.0 和命令超时

    我正在使用以下代码 想知道如果使用企业库的CreateSprocAccessor 我们是否需要设置命令超时 如果不需要 那么如何管理超时 var accessor sqlDatabase CreateSprocAccessor
  • this.$http vueJs 未设置

    我正在玩 vueJS 并尝试从 ajax 请求中获取一些数据 这是我的代码 new Vue el recipeList ready function this fetchRecipes methods fetchRecipes functi
  • 在 Pandas 中将rolling_apply 与需要 2 个参数的函数一起使用

    我正在尝试将 rollapply 与需要 2 个参数的公式一起使用 据我所知 计算 kendall tau 相关性 包括标准平局校正 的唯一方法 除非您从头开始创建公式 是 gt gt gt import scipy gt gt gt x
  • C++ 遗传算法的最佳数据结构?

    我需要实现一个针对我的问题 大学项目 定制的遗传算法 第一个版本将其编码为短矩阵 每条染色体的位数x人口大小 这是一个糟糕的设计 因为我声明了一个短路 但仅使用 0 和 1 值 但这只是一个原型 并且按预期工作 现在是时候开发一个新的了 改
  • 用于计算上下文无关语法的 FIRST 和 FOLLOW 集的算法 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要一种算法来计算语法的 FIRST 和 FOLLOW 集 是否有一个简单的算法或简单的代码来计算这些 大多数编译器教科书和解析算法