亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Python > 正文

Python實現(xiàn)常見的回文字符串算法

2020-02-15 23:39:45
字體:
供稿:網(wǎng)友

回文

利用python 自帶的翻轉(zhuǎn) 函數(shù) reversed()

def is_plalindrome(string):  return string == ''.join(list(reversed(string)))`

自己實現(xiàn)

def is_plalindrome(string):  string = list(string)  length = len(string)  left = 0  right = length - 1  while left < right:    if string[left] != string[right]:      return False    left += 1    right -= 1  return True

最長的回文子串

暴力破解

暴力破解,枚舉所有的子串,對每個子串判斷是否為回文, 時間復雜度為 O(n^3)

動態(tài)規(guī)劃

def solution(s):  s = list(s)  l = len(s)  dp = [[0] * l for i in range(l)]  for i in range(l):    dp[i][i] = True    # 當 k = 2時要用到    dp[i][i - 1] = True  resLeft = 0  resRight = 0  # 枚舉子串的長度  for k in range(2, l+1):    # 子串的起始位置    for i in range(0, l-k+1):      j = i + k - 1      if s[i] == s[j] and dp[i + 1][j - 1]:        dp[i][j] = True        # 保存最長的回文起點和終點        if resRight - resLeft + 1 < k:          resLeft = i          resRight = j  return ''.join(s[resLeft:resRight+1])

時間復雜度為 O(n^2), 空間復雜度為 O(n^2)

Manacher 算法

Manacher 算法首先對字符串做一個預處理,使得所有的串都是奇數(shù)長度, 插入的是同樣的符號且符號不存在與原串中,串的回文性不受影響

aba => #a#b#a#abab => #a#b#a#b#`

我們把回文串中最右位置與其對稱軸的距離稱為回文半徑,Manacher 算法定義了一個回文半徑數(shù)組 RL,RL[i]表示以第 i 個字符為對稱軸的回文半徑,對于上面得到的插入分隔符的串來說,我們可以得到 RL數(shù)組

char: # a # b # a #RL:  1 2 1 4 1 2 1RL-1: 0 1 0 3 0 1 0i:   0 1 2 3 4 5 6char: # a # b # a # b #RL:  1 2 1 4 1 4 1 2 1RL-1: 0 1 0 3 0 3 0 1 0i:  0 1 2 3 4 5 6 7 8

我們還求了 RL[i] - 1: 我們發(fā)現(xiàn) RL[i] -1 正好是初始字符串中以位置i 為對稱軸的最長回文長度

所以下面就是重點如何求得 RL 數(shù)組了, 可以參考這篇 文章 (講得比較清晰)

下面是算法實現(xiàn)

def manacher(preS):  s = '#' + '#'.join(preS) + '#'  l = len(s)  RL = [0] * l  maxRight = pos = maxLen = 0  for i in range(l):    if i < maxRight:      RL[i] = min(RL[2*pos - i], maxRight-i)    else:      RL[i] = 1    while i - RL[i] >= 0 and i + RL[i] < l and s[i - RL[i]] == s[i + RL[i]]:      RL[i] += 1    if i + RL[i] - 1 > maxRight:      maxRight = i + RL[i] - 1      pos = i  maxLen = max(RL)  idx = RL.index(maxLen)  sub = s[idx - maxLen + 1: idx + maxLen]  return sub.replace('#', '')

空間復雜度:借助了一個輔助數(shù)組,空間復雜度為 O(n)

時間復雜度:盡管內(nèi)層存在循環(huán),但是內(nèi)層循環(huán)只對尚未匹配的部分進行,對于每一個字符來說,只會進行一次,所以時間復雜度是 O(n)

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
麻豆91精品91久久久| 黄色在线观看视频网站| 欧美激情网址| 日韩精品 欧美| 色播视频在线播放| 亚洲久久久久久久久久| 欧美成人午夜做爰视频在线观看| 337p亚洲精品色噜噜狠狠| 青青草手机视频在线观看| 污视频免费在线看| 91超碰在线播放| 久热这里只有精品6| 2019一级黄色毛片免费看网| 亚洲综合区在线| 中文字幕av影院| 中文字幕福利视频| 亚洲一区二区精品在线观看| 妞干网在线观看视频| 国产精品视频白浆免费视频| 欧美色图17p| 精品无人码麻豆乱码1区2区| 黄色网免费看| 欧美男插女视频| 狠狠干婷婷色| 久久精品电影一区二区| 欧美自拍偷拍一区| 欧美视频一区二区在线观看| 亚洲欧美一区二区三区孕妇| 久久综合久久网| 欧美激情一区二区久久久| 91福利免费观看| 久久九九热免费视频| 欧美极品在线播放| 久久久综合网站| 国产精品有限公司| 久久亚洲影视| 97干com| 亚洲视频视频在线| 亚洲精品男人| 国产精品精品国产色婷婷| 国产亚洲精品自在久久| 国产剧情麻豆剧果冻传媒视频免费| 欧美一级艳片视频免费观看| 亚洲aⅴ天堂av在线电影软件| 99热这里只有精品在线观看| 在线免费观看毛片| 亚洲网址在线| 国产999精品久久久影片官网| 2022国产麻豆剧果冻传媒剧情| 91国偷自产一区二区三区的观看方式| 麻豆高清免费国产一区| 国产成人的电影在线观看| 亚洲性线免费观看视频成熟| 国产富婆一区二区三区| 综合欧美一区二区三区| 九九九九久久久久| 天天干在线视频论坛| 亚洲精品乱码久久久久久金桔影视| 日批视频免费在线观看| 色18美女社区| 麻豆传媒在线免费| 国产精品美女久久久久久久久久久| 51成人精品网站| 国产精品大片wwwwww| 久久先锋资源网| 天堂国产一区二区三区| 成人亚洲免费视频| 日本精品久久久久久| 最新欧美人z0oozo0| 国产欧美精品在线| 久久男人av| 香蕉青柠影院| 精品久久久影院| 亚洲欧美日韩成人| 国产啊啊啊视频在线观看| 国产va免费精品观看精品视频| 亚洲国产精品va在线看黑人| 成年网站在线视频网站| av线上观看| 欧美三级中文字幕| 激情欧美一区二区三区在线观看| 久久精品一区二区三区资源网| 欧美激情电影| 可以免费在线观看的av| 成人欧美一区二区三区视频网页| 黄频视频在线观看| 在线观看wwww| 777丰满影院| 久久精品av麻豆的观看方式| 四虎国产精品免费| 制服.丝袜.亚洲.中文.综合懂色| 欧美在线高清| 97aⅴ精品视频一二三区| 粉嫩av一区二区三区| 嫩草影院一二三| 最好看更新中文字幕| 久久久久亚洲av无码专区| 亚洲日本va午夜在线电影| 国内国产精品天干天干| 欧美精品在线观看91| 欧美高清www午色夜在线视频| 一本一本大道香蕉久在线精品| 欧美美女一区二区三区| 国产一区二区三区四区五区美女| 国产精品对白交换视频| 久久精品97| 欧美色图影院| 五月天亚洲综合情| 久久精品夜色噜噜亚洲aⅴ| 亚洲毛片亚洲毛片亚洲毛片| 一区二区美女视频| 午夜精品久久久久久久久久久| 亚洲最大在线| 精品亚洲视频在线| 1024精品合集| 亚洲精品成人悠悠色影视| 波多野结衣手机在线视频| 亚洲精华国产欧美| 久久精品国产亚洲av久| 国产精品1luya在线播放| 日韩视频一区二区三区在线播放| 黄视频在线观看www| 国产精品精品软件男同| 欧美性猛交xxx| 婷婷激情四射网| 亚洲人成在线观看网站高清| 欧美日韩精品| 成人免费网站www网站高清| 亚洲成人亚洲激情| 色妞色视频一区二区三区四区| 青青草成人在线观看| 欧美人xxxx| 国产偷自视频区视频一区二区| 另类天堂视频在线观看| 欧美日韩在线播放一区| 亚洲最大成人综合| 中文天堂在线播放| 国产二级片在线| 夜夜嗨av色综合久久久综合网| 3dmax动漫人物在线看| 美乳视频一区二区| 欧美videos极品另类| 黄色一级片免费看| 国产精品久久99久久| 亚洲欧美日韩一区二区三区在线观看| 成人激情黄色小说| 亚洲男人天堂2017| 在线观看你懂| 精品视频中文字幕| av天天av| 亚洲精品国产av| 国内精品久久久久久影院老狼| 国产主播在线一区| 日本精品免费在线观看| 国产白袜脚足j棉袜在线观看| 自拍偷拍亚洲区| 制服丝袜在线91| 免费观看成人毛片| 中文字幕视频一区| 日韩乱码人妻无码中文字幕久久| 日韩高清dvd碟片| 欧美日韩黑人| 久久久视频精品| jizzjizzjizz美国| 人妻激情偷乱频一区二区三区| 日本精品久久| 日韩一本二本av| 久久大片网站| 九九久久精品视频| 青青草视频网站| www.亚洲高清| 亚洲a一区二区三区| 午夜国产小视频| 国产精品嫩草影视| 中文字幕少妇一区二区三区| 韩日欧美一区二区三区| 亚洲区精品久久一区二区三区| 在线影院自拍| 男人捅女人免费视频| 欧美亚洲一区二区在线观看| 国产伦精品一区二区三区免费| 国产精品毛片一区二区| 日韩在线免费观看av| 成人综合网址| 亚洲av无码成人精品国产| 亚洲丝袜精品丝袜在线| 韩国精品一区二区三区六区色诱| 亚洲xxxx做受欧美| 中文字幕网站视频在线| 亚洲激情社区| 精品黑人一区二区三区在线观看| 亚洲成在人线免费观看| 成人国产精品免费观看视频| 天天舔天天干天天操| 亚洲午夜精品久久久久久浪潮| 欧美在线播放一区二区| 欧美专区第一页| 欧美日韩精品一本二本三本| 国产精品视频精品视频| 日本sm极度另类视频| 日韩一区二区视频| 黄色激情在线播放| 欧美性videos| 国产91精品视频在线观看| 久久琪琪电影院| 精品视频vs精品视频| www.久久成人| tube国产麻豆| 天天爽夜夜爽| 久久国产柳州莫菁门| av免费在线一区二区三区| 国产精品久久久久婷婷二区次| 欧美极品美女视频网站在线观看免费| 成人在线免费视频观看| 国产欧美日韩综合一区在线观看| 亚洲av综合色区无码另类小说| 国产色爱av资源综合区| 亚洲综合色婷婷在线观看| 一区二区三区美女视频| wwwwww色| 制服丝袜亚洲色图| 一区免费观看| 久久只有这里有精品| 美腿丝袜亚洲一区| 亚洲 日本 欧美 中文幕| 日本少妇裸体做爰| 久久成人一区二区| 国产欧美久久久精品影院| 精品久久香蕉国产线看观看亚洲| 肉大捧一出免费观看网站在线播放| 黄色日韩精品| 两个人看的免费完整在线观看| 亚洲成人久久一区| 久久精品夜夜夜夜久久| 黑人巨大精品欧美黑白配亚洲| 精品久久久久久中文字幕一区奶水| 免费在线观看污污视频| 一区二区视频免费观看| 中国字幕a在线看韩国电影| 91老师国产黑色丝袜在线| 91传媒在线观看| 99久久伊人精品影院| 亚洲自拍偷拍第一页| 亚洲美腿欧美激情另类| 日本超碰在线观看| 欧美日本精品| 日本xxxxxxxxxx75| 毛片免费在线播放| 99re热视频这里只精品| 国产视频第一页在线观看| 福利视频在线播放| 日韩免费啪啪| 日本欧美www| 欧美一级在线免费| 国产一区亚洲二区三区| 久久精品女人的天堂av| 在线天堂中文www视软件| 亚洲天堂二区| 欧美三级电影在线播放| 哺乳一区二区三区中文视频| 激情综合激情| 免费国产自久久久久三四区久久| 国产精品一区二区av日韩在线| 日韩综合在线视频| 日韩女优制服丝袜电影| 国产91丝袜美女在线播放| 麻豆影视在线观看_| 亚洲精品第三页| 最新国产一区| 亚洲av激情无码专区在线播放| 中文字幕 日本| 久久久久久久久久久视频| 亚洲欧美日本国产| 开心九九激情九九欧美日韩精美视频电影| 国产精品186在线观看在线播放| 国产精品污www一区二区三区| 欧美一区二区三区综合| 亚洲国产精品狼友在线观看| 99在线视频首页| 久久成人免费视频| 九色精品国产蝌蚪| 精品亚洲一区二区三区| 在线观看涩涩| 国产精品资源站| 色视频免费版高清在线观看| 99久久精品免费看国产免费软件| 四虎成人免费观看在线网址| 日韩免费黄色av| 4438x成人网最大色成网站| 久久这里有精品15一区二区三区| 亚洲精品久久嫩草网站秘色| 国产精品videossex撒尿| www.久久91| 久久九九热re6这里有精品| 亚洲精品av在线| 国产91在线视频| 欧美大片第1页| www网站在线观看| 日韩精品一区二区三区国语自制| 欧美激情三级| 国产精品96久久久久久又黄又硬| 极品美乳网红视频免费在线观看| 欧美性感美女h网站在线观看免费| 中文字幕一区二区三区不卡在线| 福利电影导航| 精品入口麻豆传煤| 国产精品影片在线观看| 一级特黄录像免费播放全99| 麻豆资源在线| 成人看片人aa| seba5欧美综合另类| 四季av综合网站| 91免费精品| 最近中文在线观看| 三年中国中文观看免费播放| 日韩一区二区免费电影| 999国产在线| 日韩中文有码在线视频| 一本色道精品久久一区二区三区| 精品无码人妻一区二区三| 欧美日本亚洲视频| 国产免费不卡| 91av免费| wwwxxx国产| 青春草国产成人精品久久| 久久色成人在线| 91视频 -- 69xx| 亚洲一区二区伦理|