当前位置: 首页 > news >正文

【力扣刷题】LeetCode763-划分字母区间

文章目录

      • 1. LeetCode763_划分字母区间

1. LeetCode763_划分字母区间

题目链接🔗

在这里插入图片描述


  • 🐧解题思路 区间合并
    题目中这句话很关键“我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。” 你这句话你可以理解为 把相同字母在一个区间,其实就是合并区间,把相同字母的区间合并在一起

①首先记录字符串每个字母最后出现的位置;
②设置两个指针表示左右区间,当前区间包含相同字母都在这个区间里面;


class Solution {
public:vector<int> partitionLabels(string s) {int n = s.size();int last[26]; // 记录每个字母最后出现的位置for (int i = 0; i < n; i++) {int num = s[i] - 'a';last[num] = i;}vector<int> ans;int begin = 0, end = 0;for (int i = 0; i < n; i++) {end = max(end, last[s[i] - 'a']);if (i == end) { // 表示 [begin, end] 这段区间已经包含 下标 <= i// 所有相同字符ans.push_back(end - begin + 1);begin = end + 1;}}return ans;}
};

在这里插入图片描述

http://www.dtcms.com/a/199594.html

相关文章:

  • 力扣网-复写零
  • 【Go】从0开始学习Go
  • 力扣每日一题5-19
  • OpenMV IDE 的图像接收缓冲区原理
  • leetcode 74. Search a 2D Matrix
  • 【滑动窗口】LeetCode 1004题解 | 最大连续1的个数 Ⅲ
  • IDE 使用技巧与插件推荐
  • 力扣992做题笔记
  • SQL注入——Sqlmap工具使用
  • UA 编译和建模入门教程(zhanzhi学习笔记)
  • LLM最后怎么输出值 解码语言模型:从权重到概率的奥秘
  • 手机怎么查看网络ip地址?安卓/iOS设备查询指南
  • 【QT】类A和类B共用类C
  • python实现pdf转图片(针对每一页)
  • React Contxt详解
  • 【计算机主板架构】ITX架构
  • 企业标准信息公共服务平台已开放标准通编辑器访问入口
  • 苹果的人工智能领域慢热
  • 计算机视觉设计开发工程师学习路线
  • 展锐Android14及更新版本split_build编译方法
  • 【android bluetooth 协议分析 01】【HCI 层介绍 9】【ReadLocalSupportedCommands命令介绍】
  • C语言实现android/linux按键模拟
  • Linux动静态库制作与原理
  • 汇编:电子计数器
  • Linux问题排查-找到偷偷写文件的进程
  • 服务器的基础知识
  • 软件设计师完整性约束考点分析——求三连
  • AIGC与文本生成:人工智能写作的新纪元
  • Go语言测试用例的执行与分析
  • Git基础面试题