Python查找最長(zhǎng)不包含重復(fù)字符的子字符串算法示例
本文實(shí)例講述了Python查找最長(zhǎng)不包含重復(fù)字符的子字符串算法。分享給大家供大家參考,具體如下:
題目描述
請(qǐng)從字符串中找出一個(gè)最長(zhǎng)的不包含重復(fù)字符的子字符串,計(jì)算該最長(zhǎng)子字符串的長(zhǎng)度。例如在“arabcacfr”中,最長(zhǎng)的不包含重復(fù)字符的子字符串是“acfr”,長(zhǎng)度為4
采用字典的方法,最后輸出所有最長(zhǎng)字符的列表
算法示例:
# -*- coding:utf-8 -*-
#! python3
class Solution:
def __init__(self):
self.maxString = []
def longestSubString(self, inputString):
if inputString == '':
return ''
dic = {}
dic = dic.fromkeys(inputString, 0)
self.maxString.append(inputString[0])
for i in range(len(inputString)):
for j in range(i, len(inputString)):
if dic[inputString[j]] != 0:
dic = dic.fromkeys(inputString, 0)
break
else:
if j - i + 1 > len(self.maxString[0]):
self.maxString = []
self.maxString.append(inputString[i:j+1])
elif j - i + 1 == len(self.maxString[0]):
self.maxString.append(inputString[i:j+1])
dic[inputString[j]] += 1
inputString = 'arabcacfr'
sol = Solution()
sol.longestSubString(inputString)
print(sol.maxString)
#輸出:['rabc', 'acfr']
運(yùn)行結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python列表(list)操作技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
數(shù)據(jù)清洗--DataFrame中的空值處理方法
今天小編就為大家分享一篇數(shù)據(jù)清洗--DataFrame中的空值處理方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-07-07
對(duì)pandas進(jìn)行數(shù)據(jù)預(yù)處理的實(shí)例講解
下面小編就為大家分享一篇對(duì)pandas進(jìn)行數(shù)據(jù)預(yù)處理的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04
如何基于Python實(shí)現(xiàn)一個(gè)慶祝國(guó)慶節(jié)的小程序
這篇文章主要介紹了如何基于Python實(shí)現(xiàn)一個(gè)慶祝國(guó)慶節(jié)的小程序,增加了互動(dòng)選擇祝福語、查詢信息、播放背景音樂及趣味小測(cè)驗(yàn)等功能,使用tkinter增強(qiáng)GUI,提升用戶互動(dòng)體驗(yàn),需要的朋友可以參考下2024-09-09
Python實(shí)現(xiàn)獲取sonarqube數(shù)據(jù)
sonarqube是一款代碼分析的工具,可以對(duì)通過soanrScanner掃描后的數(shù)據(jù)傳遞給sonarqube進(jìn)行分析,本文為大家整理了Python獲取sonarqube數(shù)據(jù)的方法,需要的可以參考下2023-05-05
django序列化時(shí)使用外鍵的真實(shí)值操作
這篇文章主要介紹了django序列化時(shí)使用外鍵的真實(shí)值操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07

