python-leetcode-划分字母区间

news/2025/2/27 10:51:31

763. 划分字母区间 - 力扣(LeetCode)

class Solution:
    def partitionLabels(self, s: str) -> List[int]:
        last_index = {char: idx for idx, char in enumerate(s)}
        partitions = []
        start = end = 0
        
        for i, char in enumerate(s):
            end = max(end, last_index[char])
            if i == end:
                partitions.append(end - start + 1)
                start = i + 1
        
        return partitions


http://www.niftyadmin.cn/n/5869988.html

相关文章

8、HTTP/1.0和HTTP/1.1的区别【高频】

第一个是 长连接: HTTP/1.0 默认 短连接,(它也可以指定 Connection 首部字段的值为 Keep-Alive实现 长连接)而HTTP/1.1 默认支持 长连接,HTTP/1.1是基于 TCP/IP协议的,创建一个TCP连接是需要经过三次握手的…

如何在netlify一键部署静态网站

1. 准备你的项目 确保你的静态网站文件(如 HTML、CSS、JavaScript、图片等)都在一个文件夹中。通常,项目结构如下: my-static-site/ ├── index.html ├── styles/ │ └── styles.css └── scripts/└── script.js…

前端px转为rem的自适应解决方案

1.前端项目安装:npm install postcss-pxtorem --save-dev 2.在项目根目录下新增postcss.config.js文件,文件内容如下: module.exports {plugins: {postcss-pxtorem: {rootValue: 16, // 1rem 16pxpropList: [*], // 转换所有属性selector…

服务器间迁移conda环境

注意:可使用迁移miniconda文件 or 迁移yaml文件两种方式,推荐前者,基本无bug! 一、迁移miniconda文件: 拷贝旧机器的miniconda文件文件到新机器: 内网拷贝:scp -r mazhf192.168.1.233:~/miniconda3 ~/ 外…

支持自动化数据回放

以下是10个支持请求录入与回放能力的免费测试开发平台,均来自GitHub: 1. **Sharingan** GitHub地址:[https://github.com/didi/sharingan](https://github.com/didi/sharingan) 特点:基于Go语言的流量录制回放工具&…

c#笔记-基础知识

目录 整数 浮点 decimal bool 引用 object string 值 枚举 关键字 enum 类型转换 隐式转换 ​编辑 显式转换 装箱,拆箱 常量 表达式 ​编辑 字符串的使用 比较字符串 字符格式化 ​编辑 截取字符串 字符串的分割 插入字符串 删除字符串 …

DevOps全流程

DevOps全流程 面试速记 DevOps 是一种融合开与运维的软件研发实践方法,规划从需求调研到开发,测试,部署等全流程,通过Jenkins 和Kubernetes 等自动化工具集成部署实现从代码编写到部署的无缝衔接,加速软件交付周期。我…

Redis分布式缓存面试题

为什么使用分布式缓存? 1. 提升性能 降低延迟:将数据缓存在离应用更近的地方,减少数据访问时间。减轻数据库压力:缓存频繁访问的数据,减少对后端数据库的请求,提升系统响应速度。 2. 扩展性 水平扩展&a…