欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java算法題解Leetcode763劃分字母區(qū)間示例

 更新時(shí)間:2023年01月09日 10:28:10   作者:itbird01  
這篇文章主要為大家介紹了java算法題解Leetcode763劃分字母區(qū)間示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

題目

763. 劃分字母區(qū)間

字符串 S 由小寫字母組成。我們要把這個(gè)字符串劃分為盡可能多的片段,同一字母最多出現(xiàn)在一個(gè)片段中。返回一個(gè)表示每個(gè)字符串片段的長(zhǎng)度的列表。

示例: 輸入:S = "ababcbacadefegdehijhklij" 輸出:[9,7,8] 解釋: 劃分結(jié)果為 "ababcbaca", "defegde", "hijhklij"。 每個(gè)字母最多出現(xiàn)在一個(gè)片段中。 像 "ababcbacadefegde", "hijhklij" 的劃分是錯(cuò)誤的,因?yàn)閯澐值钠螖?shù)較少。

提示: S的長(zhǎng)度在[1, 500]之間。 S只包含小寫字母 'a' 到 'z' 。

解題思路

1)解決問題的根本在于,找到一個(gè)區(qū)間,這個(gè)區(qū)間內(nèi)的字符,沒有在其他區(qū)間出現(xiàn)過

2)那我們就想找到這個(gè)區(qū)間的開始位置、結(jié)束位置,針對(duì)這個(gè)區(qū)間的每個(gè)字符,如果字符出現(xiàn)的lastIndex大于當(dāng)前統(tǒng)計(jì)到的stop,則stop更新為此邊界,直到遍歷到這個(gè)stop邊界,證明此次遍歷,start->stop這個(gè)區(qū)間內(nèi),已經(jīng)包含所有重復(fù)字符

import java.util.ArrayList;
import java.util.List;
class Solution {
	public List<Integer> partitionLabels(String s) {
		List<Integer> res = new ArrayList<Integer>();
		if (s == null || s.length() == 0) {
			return res;
		}
		int start = 0, stop = 0;
		for (int i = start; i < s.length(); i++) {
			if (s.lastIndexOf(s.charAt(i)) > stop) {
				stop = s.lastIndexOf(s.charAt(i));
			}
			if (i == stop) {
				res.add(stop - start + 1);
				start = i + 1;
			}
		}
		return res;
	}
}

以上就是java算法題解Leetcode763劃分字母區(qū)間示例的詳細(xì)內(nèi)容,更多關(guān)于java算法劃分字母區(qū)間的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • SpringBoot中swagger的使用

    SpringBoot中swagger的使用

    這篇文章主要介紹了SpringBoot中swagger的使用,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)swagger的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-05-05
  • idea數(shù)據(jù)庫(kù)驅(qū)動(dòng)下載失敗的問題及解決

    idea數(shù)據(jù)庫(kù)驅(qū)動(dòng)下載失敗的問題及解決

    這篇文章主要介紹了idea數(shù)據(jù)庫(kù)驅(qū)動(dòng)下載失敗的問題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • SpringBoot基于過濾器和內(nèi)存實(shí)現(xiàn)重復(fù)請(qǐng)求攔截功能

    SpringBoot基于過濾器和內(nèi)存實(shí)現(xiàn)重復(fù)請(qǐng)求攔截功能

    這篇文章主要介紹了SpringBoot基于過濾器和內(nèi)存實(shí)現(xiàn)重復(fù)請(qǐng)求攔截,這里我們使用過濾器的方式對(duì)進(jìn)入服務(wù)器的請(qǐng)求進(jìn)行過濾操作,實(shí)現(xiàn)對(duì)相同客戶端請(qǐng)求同一個(gè)接口的過濾,需要的朋友可以參考下
    2023-01-01
  • SpringBoot+hutool實(shí)現(xiàn)圖片驗(yàn)證碼

    SpringBoot+hutool實(shí)現(xiàn)圖片驗(yàn)證碼

    本文主要介紹了SpringBoot+hutool實(shí)現(xiàn)圖片驗(yàn)證碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • springboot依賴沖突問題及解決過程

    springboot依賴沖突問題及解決過程

    新搭了一個(gè)springboot 2.3.7.RELASE的框架,在集成mysql,tkMapper,mybatis的過程中,啟動(dòng)報(bào)錯(cuò),怎么解決這個(gè)問題呢,下面小編給大家?guī)砹藄pringboot依賴沖突問題及解決過程,一起看看吧
    2021-09-09
  • 解決使用mybatis-plus時(shí),生成的SQL大寫變小寫加下劃線問題

    解決使用mybatis-plus時(shí),生成的SQL大寫變小寫加下劃線問題

    這篇文章主要介紹了解決使用mybatis-plus時(shí),生成的SQL大寫變小寫加下劃線問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Spring Boot 中的 Spring Cloud Feign的原理解析

    Spring Boot 中的 Spring Cloud Feign的原

    Spring Cloud Feign 是 Spring Cloud 中的一個(gè)組件,它可以幫助我們實(shí)現(xiàn)聲明式的 REST 客戶,這篇文章主要介紹了Spring Boot 中的 Spring Cloud Feign,需要的朋友可以參考下
    2023-07-07
  • Java設(shè)計(jì)模式中的裝飾器模式簡(jiǎn)析

    Java設(shè)計(jì)模式中的裝飾器模式簡(jiǎn)析

    這篇文章主要介紹了Java設(shè)計(jì)模式中的裝飾器模式簡(jiǎn)析,裝飾模式能夠?qū)崿F(xiàn)動(dòng)態(tài)的為對(duì)象添加功能,是從一個(gè)對(duì)象外部來給對(duì)象添加功能,通常給對(duì)象添加功能,要么直接修改對(duì)象添加相應(yīng)的功能,要么派生對(duì)應(yīng)的子類來擴(kuò)展,抑或是使用對(duì)象組合的方式,需要的朋友可以參考下
    2023-12-12
  • 解決redisTemplate中l(wèi)eftPushAll隱性bug的問題

    解決redisTemplate中l(wèi)eftPushAll隱性bug的問題

    這篇文章主要介紹了解決redisTemplate中l(wèi)eftPushAll隱性bug的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • Java class文件格式之?dāng)?shù)據(jù)類型_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    Java class文件格式之?dāng)?shù)據(jù)類型_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理

    這篇文章主要介紹了Java class文件格式之?dāng)?shù)據(jù)類型的相關(guān)資料,需要的朋友可以參考下
    2017-06-06

最新評(píng)論