Leetcode練習(python):字符串類:第93題:復原IP地址:給定一個只包含數字的字符串,復原它並返回所有可能的 IP 地址格式。 有效的 IP 地址正好由四個整數(每個整數位於 0 到 255 之間組成),整數之間用 '.' 分隔。


題目:
復原IP地址:給定一個只包含數字的字符串,復原它並返回所有可能的 IP 地址格式。  有效的 IP 地址正好由四個整數(每個整數位於 0 到 255 之間組成),整數之間用 '.' 分隔。 
思路:
思路較簡單。
程序:
class Solution:
    def restoreIpAddresses(self, s: str) -> List[str]:
        if not s:
            return []
        length = len(s)
        if length < 4:
            return []
        result = []
        for index1 in range(1, 4):
            section1 = s[0: index1]
            if self.judgeIfValid(section1):
                for index2 in range(index1 + 1, index1 + 4):
                    section2 = s[index1: index2]
                    if self.judgeIfValid(section2):
                        for index3 in range(index2 + 1, index2 + 4):
                            section3 = s[index2: index3]
                            if self.judgeIfValid(section3):
                                section4 = s[index3:]
                                if self.judgeIfValid(section4):
                                    result.append("%s.%s.%s.%s" %(section1, section2, section3, section4))
        ip = result
        return ip
    def judgeIfValid(self, section):
        if section and section[0] == "0"  and len(section) > 1:
            return False
        if section and int(section) == 0 and len(section) > 1:
            return False
        if section and len(section) > 3:
            return False
        if section and int(section) >= 0 and int(section) <= 255:
            return True
        else:
            return False


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 LeetCode(93): 復原IP地址 Leetcode練習(Python):字符串類:第20題:有效的括號:給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。 有效字符串需滿足: 左括號必須用相同類型的右括號閉合。 左括號必須以正確的順序閉合。 注意空字符串可被認為是有效字符串。 給定一個只包括 ‘(‘,‘)‘,‘{‘,‘}‘,‘[‘,‘]‘ 的字符串,判斷字符串是否有效。 給定一個只包括 '(',')','{','}','[',']' 的字符串 s ,判斷字符串是否有效 棧特點使用:給定一個只包括 '(',')','{','}','[',']' 的字符串,判斷字符串是否有效。 Leetcode練習(Python):第415題:字符串相加:給定兩個字符串形式的非負整數 num1 和num2 ,計算它們的和。 Leetcode練習(Python):字符串類:第43題:字符串相乘:給定兩個以字符串形式表示的非負整數 num1 和 num2,返回 num1 和 num2 的乘積,它們的乘積也表示為字符串形式。 Leetcode練習(Python):第389題:找不同:給定兩個字符串 s 和 t,它們只包含小寫字母。 字符串 t 由字符串 s 隨機重排,然后在隨機位置添加一個字母。 請找出在 t 中被添加的字母。 Leetcode練習(python):字符串類:第91題:解碼方法:一條包含字母 A-Z 的消息通過以下方式進行了編碼: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 給定一個只包含數字的非空字符串,請計算解碼方法的總數。 Leetcode練習(Python):第66題:給定一個由整數組成的非空數組所表示的非負整數,在該數的基礎上加一。 最高位數字存放在數組的首位, 數組中每個元素只存儲單個數字。 你可以假設除了整數 0 之外,這個整數不會以零開頭。
 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM