如何在 C# 中实现下推自动机?
我想为 PDA 编写这个代码。我将如何在 C# 中做到这一点?
a^nbc^n (n>=0)
I want to code this for PDA. How would I do that in C#?
a^nbc^n (n>=0)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
算法:
一次从输入中循环读取一个字母。
阶段1:
如果读取的字母是“a”,则增加计数器,并重复阶段1。如果读取的字母不是“a”,则继续下一部分。
第二阶段:
如果读到的字母是“b”,则进入下一阶段。如果读取的字母不是“b”,则算法失败。
阶段3:
如果读取的字母是“c”,则递减计数器,并重复阶段3。如果读取的字母不是“c”,则继续下一阶段。
第4阶段:
如果计数器为零,则算法成功,否则失败。
Algorithm:
Read one letter at a time from the input, in a loop.
Stage 1:
If the letter read is "a" then increment a counter, and repeat Stage 1. If the letter read is not "a" then proceed to the next part.
Stage 2:
If the letter read is "b" then proceed to the next stage. If the letter read is not "b" then the algorithm fails.
Stage 3:
If if the letter read is "c" then decrement the counter, and repeat Stage 3. If the letter read is not "c" then proceed to the next stage.
Stage 4:
If the counter is zero, then the algorithm succeeds, otherwise it fails.