LeetCode763. Partition Labels

2023-12-09 21:28

本文主要是介绍LeetCode763. Partition Labels,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 一、题目
    • 二、题解

一、题目

You are given a string s. We want to partition the string into as many parts as possible so that each letter appears in at most one part.

Note that the partition is done so that after concatenating all the parts in order, the resultant string should be s.

Return a list of integers representing the size of these parts.

Example 1:

Input: s = “ababcbacadefegdehijhklij”
Output: [9,7,8]
Explanation:
The partition is “ababcbaca”, “defegde”, “hijhklij”.
This is a partition so that each letter appears in at most one part.
A partition like “ababcbacadefegde”, “hijhklij” is incorrect, because it splits s into less parts.
Example 2:

Input: s = “eccbbbbdec”
Output: [10]

Constraints:

1 <= s.length <= 500
s consists of lowercase English letters.

二、题解

class Solution {
public:vector<int> partitionLabels(string s) {int n = s.size();vector<int> map(26,0);//记录字符出现的最远位置的下标for(int i = 0;i < n;i++){map[s[i]-'a'] = i;}vector<int> res;int left = 0,right = 0;for(int i = 0;i < n;i++){right = max(map[s[i]-'a'],right);if(i == right){res.push_back(right-left+1);left = i + 1;}}return res;}
};

这篇关于LeetCode763. Partition Labels的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/475101

相关文章

[LeetCode] 763. Partition Labels

题:https://leetcode.com/submissions/detail/187840512/ 题目 A string S of lowercase letters is given. We want to partition this string into as many parts as possible so that each letter appears in at mo

MS SQL Server partition by 函数实战三 成绩排名

目录 需求 范例运行环境 视图样本设计 功能实现 基础数据展示 SQL语句 继续排序 小结 需求 假设有若干已更新考试成绩的考生,考试成绩包括总成绩、分项成绩1、分项成绩2,其它信息包括应聘岗位名称、姓名等信息。现希望根据总成绩计算排名,成绩越高排名越靠前,相同成绩排名并列,另外有并列则按总数递增,如两个第1后是第3。本文将继续介绍利用 partition by

关于PostgreSQL的分区表的历史及分区裁剪参数enable_partition_pruning与constraint_exclusion的区别

1. 疑惑 我们知道控制分区裁剪的参数有两个: enable_partition_pruningconstraint_exclusion 这两个参数有什么区别呢? 2. 解答 要说明这两个参数的区别需要先讲一讲PostgreSQL数据库中分区的历史,在PostgreSQL 10版本之前,PostgreSQL数据库实际上是没有单独的创建分区表的DDL语句,都是通过表继承的原理来创建分区表,

Hadoop中MapReduce中combine、partition、shuffle的作用是什么?在程序中怎么运用?

InputFormat类:该类的作用是将输入的文件和数据分割成许多小的split文件,并将split的每个行通过LineRecorderReader解析成<Key,Value>,通过job.setInputFromatClass()函数来设置,默认的情况为类TextInputFormat,其中Key默认为字符偏移量,value是该行的值。 Map类:根据输入的<Key,Value>对生成中间结果

论文学习—Efficient Multi-label Classification with Many Labels

论文学习:Efficient Multi-label Classification with Many Labels 摘要2. 多标签分类相关工作2.1 Label Transformation1. **降维(Dimensionality Reduction)**2. **回归模型(Regression Model)**3. **逆变换(Inverse Transformation)** 2

Partition by子句

上篇博客写到使用开窗函数来进行数据查询,那么over关键字可以加什么查询条件呢?下面先介绍一下其中之一的partition by子句。 开窗函数的over关键字后括号中可以使用Partition by字句来定义行的分区来进行聚合运算。与group by 字句不同,partition by字句创建的分区是独立于结果集的,创建的分区只是提供聚合计算的,而且不同的开窗函数所创建的分区也不相互影响。

SpringBoot集成kafka-指定topic(主题)-partition(分区)-offset(偏移量)消费信息

SpringBoot集成kafka-指定topic-partition-offset消费信息 1、消费者2、生产者3、配置类4、配置文件5、实体类6、工具类7、测试类8、第一次测试(读取到19条信息)9、第二次测试(读取到3条信息) 1、消费者 指定消费者读取配置文件中 topic = " k a f k a . t o p i c . n a m e " , g r o u

ORA-1688: unable to extend table ACT.INFO_HIS partition P_201807 by 64 in tablespace TA

问题描述: 表空间TA的已扩展空间还有剩余255GB,而数据文件最大可扩展空间已到最大值。current_tatal=max_total,数据文件已经无法扩展。 据库报ORA-1688错误的问题分析如下:   Mon Aug 13 09:35:47 2018 ORA-1688: unable to extend table ACT.INFO_HIS partition P_201807

count(distinct ...) over (partition by...) 替换成mysql

你这个是用了 Oracle 的分析函数。 SQL Server 是不支持的。如果语句比较简单的。例如SELECT COUNT( distinct A) OVER ( partition by B) FROM C可以修改为:SELECT COUNT( distinct A) FROM CGROUP BY B但是如果你的逻辑很复杂的话,那就麻烦了。

计算质数通过分区(Partition)提高Spark的运行性能

在Sortable公司,很多数据处理的工作都是使用Spark完成的。在使用Spark的过程中他们发现了一个能够提高Spark job性能的一个技巧,也就是修改数据的分区数,本文将举个例子并详细地介绍如何做到的。 查找质数   比如我们需要从2到2000000之间寻找所有的质数。我们很自然地会想到先找到所有的非质数,剩下的所有数字就是我们要找的质数。   我们首先遍历2到2000000之间的每个数