如何在 C# 中实现下推自动机?

发布于 2024-08-14 22:54:02 字数 83 浏览 7 评论 0原文

我想为 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

懷念過去 2024-08-21 22:54:02

算法:

一次从输入中循环读取一个字母。

阶段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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文