Python中的广义Thue-Morse序列

时间:2019-05-02 14:19:06

标签: python-3.x iteration

该网站上已经存在很多有关编写程序以生成Thue-Morse序列中前n个术语的问题。在我被重复标记击中之前,我想清楚这是一个不同的问题。

通过从“ A”开始然后应用简单的规则来生成Thue-Morse序列:将每个“ A”替换为“ AB”,将每个“ B”替换为“ BA”。迭代如下:

  • A
  • AB
  • ABBA
  • ABBABAAB
  • ABBABAABBAABABBA
  • ABBABAABBAABABBABAABAABABBAABBABAAB
  • ABBABAABBAABAABABBABAABABBAABBABAABBAABABBAABBABAABAABAABAABABAABABBA

您可以根据需要多次重复此过程,以获得前n个项,这在编程上非常容易。但是,您可以使用“ A”,“ B”和“ C”执行类似的操作。以“ A”开头。将每个“ A”替换为“ ABC”,将每个“ B”替换为“ BCA”,并将每个“ C”替换为“ CAB”。顺序如下:

  • A
  • ABC
  • ABCBCACAB
  • ABCBCACABBACCABABCCABABCBCA

这也可以任意扩展。您可以使用4个字符(15个或1,300,000个)来执行此操作。我的问题是:“如何编写一个Python程序,该程序需要两个变量n和length,并返回Thue-Morse序列的第一个“ length”字符,并带有“ n”个字符。

0 个答案:

没有答案