小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组

单调队列+滑动窗口法

class Solution:
    def longestSubarray(self, nums: List[int], limit: int) -> int:
        # 数组为空的情况
        if not nums:
            return 0
        # 数组长度
        n = len(nums)
        # 初始化单调队列
        max_deque = collections.deque([nums[0]])
        min_deque = collections.deque([nums[0]])
        # 结果变量
        result = 1
        # 初始化双指针
        head = 0
        tail = 1
        while tail < n:
            # 将该元素插入max单调队列
            while max_deque and nums[tail] > max_deque[-1]:
                max_deque.pop()
            max_deque.append(nums[tail])
            # 将该元素插入min单调队列
            while min_deque and nums[tail] < min_deque[-1]:
                min_deque.pop()
            min_deque.append(nums[tail])
            # 最大值最小值之差小于limit
            while max_deque[0] - min_deque[0] > limit:
                # head移动到窗口最大值或最小值位置,才进行出队操作
                if nums[head] == max_deque[0]:
                    max_deque.popleft()
                elif nums[head] == min_deque[0]:
                    min_deque.popleft()
                head += 1
            if tail - head + 1 > result:
                result = tail - head + 1
            tail += 1
        return result

小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第1张图片

小黑生活

穿越戈壁滩,前往魔鬼城

小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第2张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第3张图片

午饭团餐,感谢团友出钱给我们加羊肉串

小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第4张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第5张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第6张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第7张图片

到达魔鬼城,开启暴晒之旅

小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第8张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第9张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第10张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第11张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第12张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第13张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第14张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第15张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第16张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第17张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第18张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第19张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第20张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第21张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第22张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第23张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第24张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第25张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第26张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第27张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第28张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第29张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第30张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第31张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第32张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第33张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第34张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第35张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第36张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第37张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第38张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第39张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第40张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第41张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第42张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第43张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第44张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第45张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第46张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第47张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第48张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第49张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第50张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第51张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第52张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第53张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第54张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第55张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第56张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第57张图片在这里插入图片描述小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第58张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第59张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第60张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第61张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第62张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第63张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第64张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第65张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第66张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第67张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第68张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第69张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第70张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第71张图片

团友迟到了1小时,入住奎屯市大酒店

小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第72张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第73张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第74张图片

跟师弟吃了奎屯市网红烧烤店

小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第75张图片
小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第76张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第77张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第78张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第79张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第80张图片小黑day3魔鬼城暴晒午饭被请客吃串,入住奎屯市凯祥大酒店晚上继续吃串的leetcode之旅:1438. 绝对差不超过限制的最长连续子数组_第81张图片

下次更新day4独库公路与巴音布鲁克空中草原

你可能感兴趣的:(小黑的日常leetcode之旅,leetcode,算法,职场和发展)