LeetCode题解(0468):验证IP地址是否为IPv4或IPv6的地址(Python)
发布日期:2021-06-29 19:57:56 浏览次数:2 分类:技术文章

本文共 1056 字,大约阅读时间需要 3 分钟。

题目:(中等)

标签:字符串

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( N ) O(N) O(N) O ( N ) O(N) O(N) 20ms (100.00%)
Ans 2 (Python)
Ans 3 (Python)

LeetCode的Python执行用时随缘,只要时间复杂度没有明显差异,执行用时一般都在同一个量级,仅作参考意义。

解法一:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WHfAERPH-1597390607493)(LeetCode题解(0468)]:截图1.png)

class Solution:    def validIPAddress(self, IP: str) -> str:        # 尝试识别IPv4的IP地址        lst4 = IP.split(".")        if len(lst4) == 4:            for item in lst4:                if not item.isdigit() or int(item) > 255 or (int(item) != 0 and item[0] == "0") or (int(item) == 0 and len(item) > 1):                    break            else:                return "IPv4"        # 尝试识别IPv6的IP地址        chars = {
"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F"} lst6 = IP.upper().split(":") if len(lst6) == 8: for item in lst6: if len(item) == 0 or len(item) > 4 or not all([ch in chars for ch in item]): break else: return "IPv6" return "Neither"

转载地址:https://dataartist.blog.csdn.net/article/details/108005912 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:LeetCode题解(0522):字符串独有的最长子序列(Python)
下一篇:LeetCode题解(0336):寻找列表中可以通过连接构成回文串的字符串对(Python)

发表评论

最新留言

逛到本站,mark一下
[***.202.152.39]2024年04月18日 02时15分06秒