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

建设旅游信息网站的好处semir是什么牌子衣服

建设旅游信息网站的好处,semir是什么牌子衣服,安卓手机做网站服务器吗,西宁网站建设电话内容: 问题描述: 给定一个字符串 S,将字符串分割成若干个子串,使得每个子串中的字符都不重复,并且返回每个子串的长度。 解题思路: 找到每个字符最后一次出现的位置:我们首先遍历一遍字符串&a…

内容:

问题描述
给定一个字符串 S,将字符串分割成若干个子串,使得每个子串中的字符都不重复,并且返回每个子串的长度。

解题思路

  1. 找到每个字符最后一次出现的位置:我们首先遍历一遍字符串,记录下每个字符最后出现的索引。这帮助我们确定哪些字符必须出现在同一个子串中。

  2. 逐步确定每个子串的边界:然后我们通过遍历字符串,在遍历的过程中,我们会不断更新当前子串可能扩展到的最远位置(end),直到当前遍历到的位置 iend 相等时,说明从 starti 的这一段可以独立成一部分,加入答案。

代码实现

class Solution {public List<Integer> partitionLabels(String S) {char[] s = S.toCharArray();int n = s.length;int[] last = new int[26];// 记录每个字符最后出现的位置for (int i = 0; i < n; i++) {last[s[i] - 'a'] = i;}List<Integer> ans = new ArrayList<>();int start = 0, end = 0;// 遍历字符串,确定每个子串的边界for (int i = 0; i < n; i++) {end = Math.max(end, last[s[i] - 'a']);if (end == i) {ans.add(end - start + 1);start = i + 1;}}return ans;}
}

时间复杂度分析

  • 时间复杂度为 O(n),其中 n 是字符串 S 的长度。遍历一次字符串,时间复杂度是线性的。

空间复杂度分析

  • 空间复杂度为 O(1),除了输入输出之外,我们只使用了常数大小的空间(last 数组)。

总结
这道题考察了字符串分割和字符定位的能力,通过记录每个字符最后出现的位置,能够有效地确定分割点,并在 O(n) 时间内完成问题的解决。通过这种方法,我们可以高效地解决类似的问题。

http://www.dtcms.com/wzjs/509269.html

相关文章:

  • 制作旅游网站免费seo网站的工具
  • 网站做友链舆情分析网站免费
  • 天津企朋做网站的公司短视频培训课程
  • 公司注册写10万还是50万好seo工资多少
  • 无货源网店哪个平台好重庆seo点击工具
  • 运城哪家做网站的公司好腾讯广告代理商加盟
  • 郑州建设工程交易中心网站微信广告平台
  • java电子商务网站建设小程序流量点击推广平台
  • 神华集团两学一做网站谷歌推广哪家好
  • jsp开发网站西安seo专员
  • 温州网站制作建设免费的api接口网站
  • 公司网站建设需要哪些内容游戏推广可以做吗
  • 购物网站开发技术做外贸网站的公司
  • wordpress 自动安装广州四楚seo顾问
  • 国外服务器有哪些新手seo要学多久
  • 网站标题前的小图标怎么做seo教程排名第一
  • 做教育培训网站泰安网站优化公司
  • 做网站需要学些什么软件网络推广是做什么的
  • 做铝材什么什么网站好江苏seo团队
  • 做虾苗网站有哪些流程中国体育新闻
  • 郑州网站制作怎么样网站查询网
  • 电子商务网站建设和管理的意义kol推广是什么意思
  • 电子商务课程视频咖啡seo是什么意思
  • 武汉企业网站推广外包优化大师免费下载
  • 如何看一个网站的好坏百度站长之家
  • 网站基础建设一般多少钱12345浏览器
  • 网站建设网站管理哪个搜索引擎最好用
  • 网站建设公司业务培训专注网络营销推广公司
  • 杭州网站建设是什么武汉大学人民医院怎么样
  • 网站运营与管理实训报告网站推广的途径有哪些