博客
关于我
蓝桥杯:FJ的字符串(Python解释)
阅读量:502 次
发布时间:2019-03-07

本文共 456 字,大约阅读时间需要 1 分钟。

生成满足条件的字符串可以通过递归的方式来实现。每个字符串AN由两部分组成,分别是A(n-1)和中间插入的新字符,再次递归下去,直到最底层。这种方法类似于二叉树的层序遍历,从而生成所需的字符串模式。

AN的生成规律可以总结为:对于每个n,AN = A(n-1) + 当前字符 + A(n-1),其中当前字符是按顺序递增的字母,从A开始依次循环。这样,AN就形成一个递归结构,借助于递归的特性,逐层展开,最终生成所需的字符串。

def FJ(n):    if n == 0:        return ""    else:        middle_char = chr(65 + n)        return FJ(n-1) + middle_char + FJ(n-1)print(FJ(n))

第n次递归调用中加入的字符是其次 الأن结构,整个过程类似于层序生成字符串,每次添加新的中间字符,并拼接左右结构,形成对称的结果。这种结构使得生成的字符串具有对称性,并且随着n的增加,长度呈指数级增长。

转载地址:http://ntijz.baihongyu.com/

你可能感兴趣的文章
php csv 导出
查看>>
php curl 实例+详解
查看>>
php curl_init函数用法(http://blog.sina.com.cn/s/blog_640738130100tsig.html)
查看>>
php curl_multi批量发送http请求
查看>>
php curl请求微信发红包接口出现错误:Peer's Certificate issuer is not recognized.
查看>>
PHP curl请求错误汇总和解决方案
查看>>
php declare(ticks=1)
查看>>
UVA 10474
查看>>
php echo 输出 锘?... 乱码问题
查看>>
PHP empty、isset、isnull的区别
查看>>
ReferenceQueue的使用
查看>>
PHP FastCGI进程管理器PHP-FPM的架构
查看>>
referenceQueue用法
查看>>
Springboot处理跨域的方式(附Demo)
查看>>
php flush()刷新不能输出缓冲的原因分析
查看>>
Referenced classpath provider does not exist: org.maven.ide.eclipse.launchconfig
查看>>
Refactoring-Imporving the Design of Exsiting Code — 代码的坏味道
查看>>
PHP imap 远程命令执行漏洞复现(CVE-2018-19518)
查看>>
php include和require
查看>>
ref 和out 区别
查看>>