找出回文串

 Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

表4-1-5 问题分析Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

找出回文串Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

【问题描述】Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

有字符串列表['xyx','abc','abba','1123'],输出列表中的所有回文串。回文串就是逆序排列其字符后与原来内容相同的字符串,如“xyx”和“abba”都是回文串。Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

找出回文串输出结果:Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

['xyx','abba']Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

【题前思考】Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

根据问题描述,填写表4-1-5。Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

【解题思路】Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

要输出列表中的回文串,首先需要判断每一个字符串是否是回文串,判断回文串的方法就是比较原串和逆序串,在项目三学习了使用字符串切片求逆序串的方法,即“字符串[::-1]”。之后再把回文串加入列表res中,最后输出结果。Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

【程序代码】Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

找出回文串Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

【代码分析】Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

①:将字符串存入列表a中。Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

②:产生一个空列表res,用于保存回文串。Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

③:将列表a中的回文串追加到列表res中。for s in a:的意思是对列表a中的每个项s执行循环体中的操作。if s==s[::-1]:res.append(s)表示如果字符串s与s的逆序串相等就将s追加到列表res。一个字符串与其逆序串相等,这个字符串就是回文串。Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

【优化提升】Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

要输出列表中的回文串,也可以使用列表推导式,程序代码如下:Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

print([s for s in['xyx','abc','abba','1123']if s==s[::-1]])Itq100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库

关 键 词

回文串

相关教程

提示声明

  • 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!

猜你喜欢