码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode

时间:2019-08-09 01:29:46      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:技术   long   ret   更新   substr   obj   etc   遍历   def   

leetcode3

技术图片

class Solution():
    def lengthOfLongestSubstring(self, s):
        l  = []   # 记录子串的容器
        res = []   # 记录字串的长度
        for x in range(s):   # 遍历字符串
            if x not in l:        # 一直追加到不重复的子串
                l.append(x)
            else:                            # 重复字符
                res.append(len(l))    # 记录子串的长度
                i = l.index(l)            # 记录子串中在添加元素重复的字符位置
                l = l[i+1:]            # 更新子串
                l.append(x)            #加上字符
        res.append(len(l))            # 记录最后一个不重复子串长度
        return max(res) if res else 0    

leetcode 11

技术图片

class Solution(object):
    def maxArea(self, height):
        """
        :type height: List[int]
        :rtype: int
        """
        left = 0                # 双指针,左和右
        right = len(height) - 1
        maxArea = 0             # 初始面积为0

        while left < right:    # 左边 不能超过到右边
            b = right - left     #  水池的宽
            if height[left] < height[right]:   # 短板为高
                h = height[left]
                left += 1                            # 移动短板边
            else:            
                h = height[right]
                right -= 1
            area = b*h            # 求面积
             if maxArea < area:      # 面积变大即更新
                maxArea = area
             return maxArea  
             
    

leetcode

标签:技术   long   ret   更新   substr   obj   etc   遍历   def   

原文地址:https://www.cnblogs.com/fanx-1995/p/11324675.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!