非确定性下推自动机和回文

问题描述 投票:-2回答:1

我需要在文本中找到回文(单词的长度<= 6,由大写字母和大写字母组成)并使用Pushdown Automata,但不幸的是我对这些主题并不熟悉。有人可以解释我怎么能编程呢?或者也许是一些文章或主题,它在哪里完成。每一条建议我都会很高兴!

palindrome finite-automata pushdown-automaton
1个回答
0
投票

一个简单的方法可以在你的单词中间附加一个标志。开始将单词的每个字符推入堆栈,直到到达标志。到达旗帜后,您开始将角色弹出堆栈并将其与后半部分进行比较。

如果堆栈中的每个字符与后半部分中的每个对应字符匹配,则您的单词是回文。这是一个简单的解决方案,如果您了解这一点,您还可以对没有标志的解决方案进行更多研究。

此外,我认为你最好的卡片是看看其他答案:How does a pushdown automaton know how to read a palindrome?,它很好地解释了自动机如何与每个长度的回文(偶数和奇数长度)一起工作,因为我的解决方案只适用于均匀长度。

© www.soinside.com 2019 - 2024. All rights reserved.