zoukankan      html  css  js  c++  java
  • leetcode 全解(python版)

    本着blabla的精神,在这里(可能会)给出leetcode的全部习题答案 --持续更新中...

    1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

       ps:这个好简单,好容易理解aaa,,BUT是个反例,,执行用时超过限制...

    class Solution:
        def twoSum(self, nums: List[int], target: int) -> List[int]:
            l = len(nums)
            for i in range(l):
                for j in range(l):
                    if nums[i] + nums[j] == target and (not i == j):
                        return (i,j)

       下面系正确且耗时非常OK的解法

    class Solution:
        def twoSum(self, nums: List[int], target: int) -> List[int]:
            n = len(nums)
            lookup = {}
            for i in range(n):
                tmp = target - nums[i]
                if tmp in lookup:
                    return [lookup[tmp], i]
                lookup[nums[i]] = i

    3.给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。

        ps1:明明直接len(l)就已经解决了的,非要把l打印出来看着,用什么left,right来计算最长子串长度,折腾了一天也没计算明白,len(l)出来结果那一瞬间哭辽

        ps2:内存消耗太大,等待修正中...

    class Solution:
        def lengthOfLongestSubstring(self, s: str) -> int:
            l = []  # 记录遍历过的字符
            count = 0  # 记录每一个无重复字符的字串的长度
            max_num = 0  # 记录所有子串最长长度
    
            if len(s) == 0:
                return 0
            if len(s) == 1:
                return 1
    
            for c in s:
                if c not in l:
                    l.append(c)
                    count = len(l)
    
                else:
                    if l.index(c) == len(l): #如果是重复的字符为列表中最后一个,例如abcc
                        l = [].append(c)
                    l = l[l.index(c) + 1 :]
                    l.append(c)
    
                if count >= max_num:
                    max_num = count
    
            return max_num
  • 相关阅读:
    加入mapstruct后出现 找不到符号 符号: 方法 setXX 的解决方法
    解决docker容器日志导致主机磁盘空间满了的情况
    prometheus安装(docker)
    在Github或Gitee上用hexo搭建个人博客
    解决github打不开
    jenkins更新为国内源
    让sentinel-dashboard的流控配置持久化到nacos
    Yarn和Zookeeper的区别
    flink安装启动(docker)
    jQuery 事件源码定位
  • 原文地址:https://www.cnblogs.com/cxl-blog/p/10358125.html
Copyright © 2011-2022 走看看