成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

Python實現"驗證回文串"的幾種方法

瀏覽:190日期:2022-06-23 18:40:32
一、LeetCode——125.驗證回文串1.問題描述

給定一個字符串,驗證它是否是回文串,只考慮字母和數字字符,可以忽略字母的大小寫。

說明:本題中,我們將空字符串定義為有效的回文串。

2.示例

示例 1:輸入: “A man, a plan, a canal: Panama”輸出: True

示例 1:輸入: “race a car”輸出: False

示例 3:輸入: “!!!”輸出: True

二、解題分析

在排除空格及特殊字符的前提下,且不考慮字母大小寫,字符串前后元素一一相同.在字符串為空或只有一個字符時,應該返回True字符串的元素全部是符號是應該返回True

三、解題思路及代碼實現

方法一:字符串切片

創建一個空字符串s_new,通過遍歷字符串s,將字符串s中的字母和數字,拼接到s_new中,通過比較s_new[::-1] 和s_new得出結論。【字符串為有序的數據結構,可以對其進行切片操作】代碼如下:

class Solution(object): def isPalindrome(self, s): ''' :type s: str :rtype: bool ''' # 創建一個空字符串 s_new = ’’ # 遍歷字符串s for i in s: # 判斷,如果是字母或數字,將其轉為小寫拼接到字符串中 if i.isalnum():s_new += i.lower() # 切片后s_new[::-1]與s_new比較,并將結果返回 return s_new[::-1] == s_new方法二:雙游標判斷

從字符串s兩端指定兩個游標low,high如果low游標指向了 非字母和數字(即空格和符號),那么low游標往后移一位;如果high游標指向了 非字母和數字(即空格和符號),那么high游標往前移一位;直至low和high都指向了數字或字母,此時進行比較,是否相同。如果比較的結果是True,則low往后移一位,high往前移一位如果比較的結果是False,則直接返回False重復上述判斷,直至low和high重合,此時表示完成了字符串s內前后元素的一一對比判斷,返回True即可。

代碼如下:

class Solution(object): def isPalindrome(self, s): ''' :type s: str :rtype: bool ''' low = 0 high = len(s) - 1 #在字符串為空或只有一個字符時,返回True if len(s) <= 1: return True # 設定low和high對比的條件 while low < high: # 如果不是字母或數字,low往后移一位【low < high為必須條件,不然會造成索引越界】 while not s[low].isalnum() and low < high:low += 1 # 如果不是字母或數字,high往前移一位 while not s[high].isalnum() and low < high:high -= 1 # 判斷:如果相同,繼續下一次對比;如果不相同,直接返回False if s[low].lower() == s[high].lower():low += 1high -= 1 else:return False # low和high重合,即退出循環,表示前后都是一一對應的,返回True return True四、總結

以上就是今天的解題,此題目從字符串切片的解題方式來看,考察了我們對字符串常見功能的掌握情況,而雙游標的角度來看,主要考察了我們對游標這一工具的靈活運用,相信大家在學習基礎算法——快速排序時,會再次遇到雙游標,而快速排序可以說是相當于在本文核心代碼的基礎上再嵌套一層外層循環。

補充:其他方法

1:首先將字符串大寫字母轉為小寫字母,然后去掉字符串中非字母和數字的其它字符,翻轉對比輸出結果(時間復雜度O(n))

def isPalindrome(self, s): ''' :type s: str :rtype: bool ''' s = s.lower() alphanumeric = [’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’,’k’,’l’,’m’,’n’,’o’,’p’,’q’,’r’,’s’,’t’,’u’,’v’,’w’,’x’,’y’,’z’,’0’,’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’] newStr = '' for i in s: if i in alphanumeric:newStr += i return newStr==newStr[::-1]

2:str.lower()+str.isalnum()(時間復雜度O(n))

def isPalindrome(self, s): ''' :type s: str :rtype: bool ''' s = s.lower() newStr = '' for i in s: if i.isalnum():newStr += i return newStr==newStr[::-1]

3:引入re模塊(正則表達式),re.sub()

def isPalindrome(self, s): ''' :type s: str :rtype: bool ''' s = s.lower() import re s = re.sub(’[^a-z0-9]’, '', s) return s==s[::-1]

到此這篇關于Python實現'驗證回文串'的幾種方法的文章就介紹到這了,更多相關Python 驗證回文串內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久精品亚洲国产奇米99| 欧美午夜不卡| 亚洲片区在线| 国产精品毛片a∨一区二区三区| 欧美一区三区二区在线观看| 久久久久久电影| 成人一区在线看| 91麻豆精品国产91久久久资源速度| 秋霞国产午夜精品免费视频| 色综合久久久久| 日一区二区三区| 色婷婷精品大视频在线蜜桃视频| 日韩主播视频在线| 91久久精品一区二区| 青青草原综合久久大伊人精品| 性8sex亚洲区入口| 午夜在线电影亚洲一区| 国产亚洲精品久久飘花| 亚洲一二三专区| 久久国产一区| 日本美女一区二区三区视频| 欧美伊人精品成人久久综合97| 视频在线观看国产精品| 可以免费看不卡的av网站| 一区二区三区丝袜| 亚洲一区二区三区精品在线观看| 亚洲成av人影院| 在线一区二区三区四区五区| 日本视频中文字幕一区二区三区| 欧美怡红院视频| 国产原创一区二区三区| 91精品国产欧美一区二区 | 色综合天天狠狠| 欧美极品少妇xxxxⅹ高跟鞋| 欧美69视频| 国产精品剧情在线亚洲| 国产欧美另类| 三级亚洲高清视频| 欧美日韩免费不卡视频一区二区三区 | 亚洲精品字幕| 亚洲综合小说图片| 亚洲一区影院| 日本欧美肥老太交大片| 欧美绝品在线观看成人午夜影视| 成人免费电影视频| 欧美国产日本视频| 99精品国产在热久久婷婷| 午夜电影久久久| 精品视频全国免费看| 懂色av一区二区在线播放| 欧美国产欧美综合| 亚洲综合日韩| 国内成人自拍视频| 久久久精品免费网站| 一区二区高清| 国内一区二区视频| 欧美成人福利视频| 一区国产精品| 日本欧美久久久久免费播放网| 欧美一级久久久久久久大片| 欧美不卡视频| 香蕉加勒比综合久久| 欧美一区二区三区视频免费| 欧美视频网站| 免费在线观看精品| 久久久精品影视| 亚洲一区二区动漫| 国产成a人亚洲| 成人免费一区二区三区视频 | 欧美日韩久久| 视频一区视频二区中文| 精品久久国产字幕高潮| 在线视频一区观看| 国产成人午夜精品影院观看视频 | 久久激情久久| 成人免费视频一区| 一区二区三区精密机械公司| 欧美伊人久久大香线蕉综合69| 96av麻豆蜜桃一区二区| 亚洲国产一区二区视频| 日韩欧美精品在线| 一区二区av| 成人精品一区二区三区中文字幕| 亚洲综合一区在线| 亚洲精品一区二区三区蜜桃下载| 亚洲综合不卡| 97se亚洲国产综合自在线| 亚洲国产aⅴ成人精品无吗| 日韩美女主播在线视频一区二区三区| 亚洲国产精品一区二区第四页av| 国产一区二区中文字幕| 亚洲三级久久久| 91精品中文字幕一区二区三区| 亚洲日韩视频| 国产91对白在线观看九色| 亚洲一区二区高清| 久久欧美一区二区| 欧美在线免费观看视频| 欧美精品一区二区视频| 免费看黄色91| 国产精品三级电影| 欧美日韩你懂得| 99re热精品| a4yy欧美一区二区三区| 日韩极品在线观看| 国产精品久久久久久久岛一牛影视| 欧美午夜影院一区| 极品少妇一区二区三区| 粉嫩av一区二区三区在线播放| 婷婷国产在线综合| 国产精品嫩草99a| 日韩欧美国产1| 日本久久电影网| 91久久极品少妇xxxxⅹ软件| 丁香六月综合激情| 免费成人在线网站| 中文字幕亚洲精品在线观看| 欧美成人女星排名| 在线观看日韩高清av| 91久久精品www人人做人人爽| 菠萝蜜视频在线观看一区| 久草热8精品视频在线观看| 亚洲视频一区二区免费在线观看| 精品久久人人做人人爱| 欧美在线999| 国产一区二区三区久久| 欧美日韩视频| av一二三不卡影片| 国产一区日韩二区欧美三区| 亚洲一区二区成人在线观看| 国产精品久久久久一区| 26uuu国产在线精品一区二区| 欧美日韩精品一区二区三区 | 欧美猛男gaygay网站| 久久精品导航| 亚洲激情一区| 欧美日韩18| 95精品视频在线| 成人av动漫在线| 懂色av噜噜一区二区三区av| 国内精品在线播放| 免费av成人在线| 午夜精品久久久久久久蜜桃app| 亚洲三级在线免费| 国产精品视频看| 国产午夜精品久久久久久久 | 欧美色手机在线观看| 亚洲一区二区三区精品视频| 亚洲高清在线观看一区| 欧美午夜精品| 牛牛国产精品| 91论坛在线播放| 91性感美女视频| 97se亚洲国产综合自在线不卡| 国产成人精品一区二区三区网站观看| 激情综合色丁香一区二区| 蜜桃精品在线观看| 美女www一区二区| 日韩国产精品久久久| 亚洲电影欧美电影有声小说| 亚洲免费观看在线视频| 一区免费观看视频| 久久久精品国产免大香伊| 久久综合久久99| 欧美精品一区二区三区高清aⅴ | 日韩一区二区三区四区五区六区| 欧美人体做爰大胆视频| 欧美性色黄大片| 日本精品一级二级| 91九色02白丝porn| 色狠狠一区二区| 欧美性xxxxxx少妇| 欧美日韩一区久久| 91精品在线免费| 日韩欧美国产一区在线观看| 欧美不卡一区二区| 久久一日本道色综合| 国产午夜精品在线观看| 国产精品第五页| 一区二区三区国产精华| 亚洲va韩国va欧美va| 日本不卡视频在线观看| 久久成人免费网| 国产精品自拍av| 国产91露脸合集magnet| jiyouzz国产精品久久| 91麻豆视频网站| 亚洲香蕉视频| 国产日韩精品视频一区二区三区| 亚洲欧美日韩国产一区二区| 色婷婷av一区二区三区软件| 精品视频免费在线| 日韩女优av电影| 国产女人aaa级久久久级| 国产精品免费人成网站| 亚洲精品视频一区| 日韩专区中文字幕一区二区| 极品少妇一区二区三区精品视频| 成人激情小说乱人伦| 午夜精品短视频|