第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > python判断回文序列_扣丁学堂简述Python给定字符串求解所有子序列是否为回文序列的方法...

python判断回文序列_扣丁学堂简述Python给定字符串求解所有子序列是否为回文序列的方法...

时间:2019-03-10 09:54:53

相关推荐

python判断回文序列_扣丁学堂简述Python给定字符串求解所有子序列是否为回文序列的方法...

扣丁学堂简述Python给定字符串求解所有子序列是否为回文序列的方法

-06-26 13:43:14

950浏览

本篇文章扣丁学堂

问题:

给定一个字符串,得到所有的子序列,判断是否为回文序列

思路:

对字符串遍历切片即可

下面是具体实现:

#!usr/bin/env python

# -*- coding:utf-8 -*-

'''''

__AUthor__:沂水寒城

功能:对指定字符串寻找所有回文子序列

'''

def is_huiwen(one_str_list):

'''''

输入一个字符串列表,判断是否为回文序列

'''

if len(one_str_list)==1:

return True

else:

half=len(one_str_list)/2

if len(one_str_list)%2==0:

first_list=one_str_list[:half]

second_list=one_str_list[half:]

else:

first_list=one_str_list[:half]

second_list=one_str_list[half+1:]

if first_list==second_list[::-1]:

return True

else:

return False

def get_list_all_sub_list(num_list):

'''

输入一个列表,返回该列表所有的子列表,这里定义的空列表不属于子列表,故:子列表最小长度为1

'''

if len(num_list)==1:

return [num_list]

sub_list=get_list_all_sub_list(num_list[:-1])

extra=num_list[-1:]

temp_list=[]

for one in sub_list:

temp_list.append(one+extra)

return sub_list+temp_list

def slice_func(one_str):

'''''

'''

result_list=[]

for i in range(1,len(one_str)):

result_list.append(one_str[:i])

result_list.append(one_str[i:])

result_list+=list(one_str)

result_list.append(one_str)

return list(set(result_list))

def main_func2():

'''''

主调用函数

'''

str_list=['abdc','abba']

for one_str in str_list:

result_list=slice_func(one_str)

print '-----------------------------------------------'

for one in result_list:

if is_huiwen(list(one)):

print one+'是回文序列'

def main_func1():

'''''

主调用函数

'''

str_list=['abdc','abba']

for one_str in str_list:

one_str_list=list(one_str)

one_all_sub_list=get_list_all_sub_list(one_str_list)

print '------------------------------------------------'

print one_all_sub_list

for one in one_all_sub_list:

if is_huiwen(one):

print ''.join(one)+'是回文序列'

if __name__ == '__main__':

print "扣丁学堂测试结果:"

main_func2()

以上是扣丁学堂Python在线学习小编给大家分享的Python给定字符串求解所有子序列是否为回文序列的方法,希望对小伙伴们有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询。扣丁学堂是专业的Python培训机构,不仅有专业的老师和与时俱进的课程体系,还有大量的

【关注微信公众号获取更多学习资料】

标签:

扣丁学堂Python培训

Python给定字符串求解所有子序列是否为回文序列的方法

Python培训

Python视频教程

Python基础教程

python安装教程

Python核心编程

Python在线教程

Python在线视频

Python在线学习

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。