您的位置:首页 > 新闻 > 热点要闻 > 代码随想录——划分字母区间(Leetcode763)

代码随想录——划分字母区间(Leetcode763)

2024/10/11 9:15:18 来源:https://blog.csdn.net/qq_46574748/article/details/140197468  浏览:    关键词:代码随想录——划分字母区间(Leetcode763)

题目链接
在这里插入图片描述

贪心

class Solution {public List<Integer> partitionLabels(String s) {int[] count = new int[27];Arrays.fill(count,0);// 统计元素最后一次出现的位置for(int i = 0; i < s.length(); i++){count[s.charAt(i) - 'a'] = i;}List<Integer> res = new ArrayList<Integer>();int left = 0;int right = 0;for(int i = 0; i < s.length(); i++){// 找到字符出现的最远边界right = Math.max(right, count[s.charAt(i) - 'a']);if(i == right){// 将符合条件的字符串长度插入resres.add(right - left + 1);left = i + 1;}}return res;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com