[leetcode]Fruit Into Baskets

Posted 阿牧遥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[leetcode]Fruit Into Baskets相关的知识,希望对你有一定的参考价值。

滑动窗口,原来可以通过循环嵌套循环的方式实现。

class Solution:
    def totalFruit(self, tree: List[int]) -> int:

        result = 0
        fruitDict = {}
        i = 0
        # assert i <= j
        for j in range(len(tree)):
            x = tree[j]
            if x not in fruitDict:
                fruitDict[x] = 0
            fruitDict[x] += 1
            while len(fruitDict) == 3:
                fruitDict[tree[i]] -= 1
                if fruitDict[tree[i]] == 0:
                    del fruitDict[tree[i]]
                i += 1
            result = max(result, j - i + 1)

        return result
        
                
                

  

以上是关于[leetcode]Fruit Into Baskets的主要内容,如果未能解决你的问题,请参考以下文章

html Miva - Base ReadyTheme - BASK:购物篮内容

LeetCode 0904. 水果成篮 - 两种方法小详解

力扣之水果成篮史上最全解法

plsql 中 IF 语句的替代选择 Into

LeetCode Split Array into Consecutive Subsequences

LeetCode 842. Split Array into Fibonacci Sequence