小黑day5那拉提空中草原上午因下雨关闭改去河谷草原,下午薰衣草基地,入住伊宁江苏酒店附近吃当地特色羊肉串的leetcode之旅:209. 长度最小的子数组

news2024/11/24 22:57:49

小黑代码

class Solution:
    def minSubArrayLen(self, target: int, nums: List[int]) -> int:
        # 数组长度
        n = len(nums)
        # 定义双指针
        head = 0
        tail = 0
        # 中间变量
        sum_ = 0
        # 结果变量
        min_ = n + 1
        # 开始迭代 
        while head < n:
            # 尾部指针右移
            while tail < n and sum_ < target:
                sum_ += nums[tail]
                tail += 1
            # 记录长度
            if sum_ >= target and min_ > tail - head:
                min_ = tail - head
            sum_ -= nums[head]
            head += 1
        return min_ if min_ != n + 1 else 0

在这里插入图片描述

小黑根据思路自己尝试前缀和二分法

class Solution:
    def minSubArrayLen(self, target: int, nums: List[int]) -> int:
        # 数组长度
        n = len(nums)
        # 计算前缀和
        arr = [0] + [nums[0]] * n
        for i in range(1, n+1):
            arr[i] = arr[i-1] + nums[i-1]
        # 结果变量
        res = n + 1
        # 开始进行二分查找
        print(arr)
        for i in range(n+1):
            if arr[i] < target:
                continue
            l = self.left_search(arr[:i], arr[i] - target)
            length = i - l + 1 if arr[i] - target < arr[l] else i - l
            if length < res:
                res = length
        return res if res != n + 1 else 0
       
    def left_search(self, arr, target):
        # 初始化双指针
        left = 0
        right = len(arr) - 1
        while left <= right:
            mid = (left + right) // 2
            if arr[mid] < target:
                left = mid + 1
            else:
                right = mid - 1
        return left

在这里插入图片描述

前缀和二分法

class Solution:
    def minSubArrayLen(self, target: int, nums: List[int]) -> int:
        # 数组长度
        n = len(nums)
        # 构造前缀和数组
        arr = [0]
        for i in range(n):
            arr.append(nums[i]+arr[i])
        # 开始进行二分查找大于等于arr[i]+target的最近左位置
        # 结果变量
        res = n + 1
        for i in range(n):
            end = self.left_search(arr,i+1, target+arr[i])
            if end == n + 1:
                continue
            length = end - i
            if length < res:
                res = length
        return res if res != n + 1 else 0
    
    def left_search(self, arr, start, target):
        n = len(arr)
        # 定义左右指针
        start = start
        end = n - 1
        while start <= end:
            mid = (start + end) // 2
            if arr[mid] < target:
                start = mid + 1
            else:
                end = mid - 1
        return start

在这里插入图片描述

双指针法

class Solution:
    def minSubArrayLen(self, target: int, nums: List[int]) -> int:
        # 数组长度
        n = len(nums)
        # 中间变量
        sum_ = 0
        # 头尾指针
        head = 0
        tail = 0
        # 结果变量
        res = n + 1
        # 开始双指针迭代
        while tail < n:
            sum_ += nums[tail]
            tail += 1
            while sum_ >= target:
                if tail - head < res:
                    res = tail - head
                sum_ -= nums[head]
                head += 1
        return res if res != n + 1 else 0

在这里插入图片描述

小黑生活

酒店早餐

在这里插入图片描述

补充喀纳斯的烤馕

在这里插入图片描述在这里插入图片描述

前往那拉提空中草原,但由于天气原因景区封闭,前往河谷草原

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(坐在草地上)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

骑上小马在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

午饭,迟到团友加了菜

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

下午前往薰衣草基地,离调包侠不远了

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

入住伊宁江苏酒店

在这里插入图片描述

去小巷子里吃便宜的烧烤

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下次更新day6赛里木湖day7乌鲁木齐回京

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/882088.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

快速掌握Postman实现接口测试

快速掌握Postman实现接口测试 Postman简介 Postman是谷歌开发的一款网页调试和接口测试工具&#xff0c;能够发送任何类型的http请求&#xff0c;支持GET/PUT/POST/DELETE等方法。Postman非常简单易用&#xff0c;可以直接填写URL&#xff0c;header&#xff0c;body等就可以发…

企业权限管理(十一)-角色操作

角色操作-查询所有 RoleController RequestMapping("/role") Controller public class RoleController {Autowiredprivate IRoleService roleService;RequestMapping("/findAll.do")public ModelAndView findAll() throws Exception {ModelAndView mv n…

网络通信TCP/IP协议逐层分析数据链路层(第四十课)

Ethernet Ⅱ帧,也称为Ethernet V2帧,是如今局域网里最常见的以太帧,是以太网事实标准。如今大多数的TCP/IP应用(如HTTP、FTP、SMTP、POP3等)都是采用Ethernet II帧承载。 1、MAC地址概述 -MAC地址,即以太网地址,用来标识一个以太网上的某个单独设备或一组设备 -长度…

SGL论文中相关公式推导

SGL论文中相关公式推导 题记对文中公式14到15进行推导对文中公式16进行解析对文中公式20进行补充说明对文中公式21进行补充说明参考博文及感谢 题记 关于Wu2021_SIGIR_paper_Self-supervised graph learning for recommendation》这篇文章已经有很多大神整理过了&#xff0c;具…

TVP走进南京文投:数字化浪潮下,文旅业如何迈向发展“快车道”?

引言 随着数字经济的蓬勃发展&#xff0c;文旅业也面临着数字化浪潮的冲击与挑战。如何实现数字技术与文化内涵的有机结合&#xff0c;成为行业内绕不开的热点话题。8 月 4 日&#xff0c;腾讯云 TVP 联合腾讯文旅&#xff0c;携手南京文投集团&#xff0c;在南京大报恩寺遗址景…

【QGIS】处理带坐标的Excel、csv格式的数据文件

1、场景描述 项目中客户提供了某地区的地址数据Excel&#xff0c;让我发布地图服务。 2、处理过程 arcgis有导入Excel的功能&#xff0c;只需要指定横纵坐标和坐标系即可。可是我对arcgis不熟悉&#xff0c;查了一下QGIS是否有导入Excel的功能。暂时没查到直接导入Excel的文…

Redis持久化——RDB和AOF

Redis数据库是内存数据库&#xff0c;一旦出现服务宕机&#xff0c;那么内存中的数据就容易丢失。所以需要进行redis的持久化动作。 Redis持久化是指将Redis内存数据持存储到磁盘中&#xff0c;若出现了Redis服务宕机后&#xff0c;能够从硬盘中再恢复到Redis内存中。 Redis的持…

软件测试面试题【2023整理版(含答案)】

01、您所熟悉的测试用例设计方法都有哪些&#xff1f;请分别以具体的例子来说明这些方法在测试用例设计工作中的应用。 答&#xff1a;有黑盒和白盒两种测试种类&#xff0c;黑盒有等价类划分方法 边界值分析方法 错误推测方法 因果图方法 判定表驱动分析方法 正交实验设…

现有的vue3+ts+vite项目集成electron

效果图 什么时Electron Electron是使用JavaScript,HTML和CSS构建跨平台的桌面应用程序框架。 Electron兼容Mac、Windows和Linux,可以构建出三个平台的应用程序。 现有的vue3项目集成Electron 安装依赖 原来有一个vue3+ts+vite+pnpm的项目,其中sub-modules是子项目,web是…

威海--游记

威海盛夏已至&#xff0c;气温攀升的同时&#xff0c;小伙伴们出去玩的心也都藏不住了。 作为离韩国最近的城市&#xff0c;不出国门就能轻松get到浓浓的“韩范儿”&#xff01;从韩式建筑、小吃甜品&#xff0c;再到各种宝藏打卡小店&#xff0c;玩法超多&#xff0c;好吃好看…

计算机竞赛 python+opencv+深度学习实现二维码识别

0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; pythonopencv深度学习实现二维码识别 &#x1f947;学长这里给一个题目综合评分(每项满分5分) 难度系数&#xff1a;3分工作量&#xff1a;3分创新点&#xff1a;3分 该项目较为新颖&…

__ob__: Observer 后缀的数组的取值方式

开发中&#xff0c;经常从接口、父组件中&#xff0c;拿到数组然后给新的数组使用&#xff0c; 但是&#xff0c;有时候会发现带有 __ob__: Observer 后缀的数组&#xff0c;对这种数组来说&#xff0c;你是无法取到这个数组的值的&#xff0c; 而且&#xff0c;离谱的是consol…

【广州华锐互动】物联网工程VR虚拟课件有哪些特色?

物联网工程VR虚拟课件由广州华锐互动制作&#xff0c;是一种利用虚拟现实技术&#xff0c;将物联网的概念和应用场景通过模拟的方式呈现给学生的教学工具。相比传统的教学方式&#xff0c;物联网工程VR虚拟课件具有以下特色&#xff1a; 1.交互性强 物联网工程VR虚拟课件可以让…

七夕音乐照片墙制作教程,打造独一无二的浪漫礼物

大家好&#xff0c;我是机灵鹤。 一年一度的七夕马上到了。 我准备送女朋友一个亲手制作的&#xff0c;有创意的&#xff0c;有程序员特色的礼物。 女朋友特别喜欢林俊杰&#xff0c;于是我决定做一个林俊杰歌曲的 NFC 音乐相框 送给她 。 只需要用手机 NFC 在歌曲照片上贴…

韧性数据安全体系组成:多层级快速响应 |CEO专栏

风险是可以具象化和可感知的对象&#xff0c;是数据安全的衡量标准之一&#xff0c;上期「构建适应性进化的韧性数据安全体系」专栏&#xff0c;对韧性数据安全体系的组成-适应性动态风险展开介绍。 本期内容&#xff0c;将介绍韧性数据安全体系的另一个重要组成—多层级快速响…

Dubbo 与 gRPC、Spring Cloud、Istio 的关系

很多开发者经常会问到 Apache Dubbo 与 Spring Cloud、gRPC 以及一些 Service Mesh 项目如 Istio 的关系&#xff0c;要解释清楚它们的关系并不困难&#xff0c;你只需要跟随这篇文章和 Dubbo 文档做一些更深入的了解&#xff0c;但总的来说&#xff0c;它们之间有些能力是重合…

家纺家居小程序商城搭建指南

随着移动互联网的快速发展&#xff0c;小程序成为了商家们开展电商业务的重要方式之一。家纺家居行业作为一个庞大的市场&#xff0c;也可以通过搭建小程序商城来实现线上销售。下面就为大家介绍一下如何搭建家纺家居小程序商城。 首先&#xff0c;我们需要找一个专业成熟的小程…

el-tree通过default-expand-all动态控制展开/折叠

1、如下图通过勾选框动态控制展开/折叠&#xff0c;全选/清空 2、实现方式如下&#xff1a;定义key&#xff0c;监听checked2修改treeKey&#xff0c;重新渲染tere&#xff1b;附加全选和清空。 <div class"tree"><el-checkbox v-model"checked1"…

Salesforce 为什么能够在 CRM 市场获得成功?

Salesforce 为什么能够在 CRM 市场获得成功&#xff1f; 虽然salesforce有着水土不服&#xff0c;数据安全等问题&#xff0c;但依旧受到了国内CRM系统使用者的追捧。 但是近年来国内的一些CRM平台也做得很不错了&#xff0c;我认为没必要执着于非本土系统。 下面就以一个CR…

【C语言】静态通讯录 -- 详解

一、实现目标 1、功能 保存 1000 个联系人的信息添加联系人删除联系人修改联系人查找联系人排序 2、个人信息&#xff08;结构体&#xff09; 名字年龄性别电话地址 二、创建文件 test.c&#xff08;专门测试通讯录的功能&#xff09;contact.c&#xff08;接口的实现&#xf…