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

每日一题Day09-划分字母区间

题面

题解

我们先存每个字母最后一次出现的位置

for(int i=0; i<length; i++) { last[s.charAt(i) - 'a'] = i; }

后面有相同字母出现时会覆盖前面的数组里的数据;

代码

class Solution { public List<Integer> partitionLabels(String s) { int length = s.length(); int[] last = new int[26]; for(int i=0; i<length; i++) { last[s.charAt(i) - 'a'] = i; } int start = 0, end = 0; List<Integer> ret = new ArrayList<>(); for(int i=0; i<length; i++) { end = Math.max(end, last[s.charAt(i) - 'a']); if(end == i) { ret.add(end - start + 1); start = end + 1; } } return ret; } }

后言

今天面经

1.bean生命周期

2.redis缓存雪崩,穿透,击穿

3.springboot好处

4.AOP是什么

5.IOC是什么

6.一个产品,一个两个用户各访问一次记录访问次数2次,一个用户访问两次,记一次,怎么实现;

http://www.gsyq.cn/news/95123.html

相关文章:

  • OpenHarmony与ArkUI-X的AtomGit_Pocket详细版
  • 改善深层神经网络 第一周:深度学习的实践(三)dropout
  • 文本指令驱动视频创作革命:Lucy Edit AI开源模型重塑内容生产范式
  • 计算机毕业设计必看必学~ 基于SSM的大学生就业平台的设计与实现85751,原创定制程序、单片机、java、PHP、Python、小程序、文案全套、毕设成品等!
  • 44、SQL Server 与 PostgreSQL 的对比及迁移指南
  • 45、SQL Server 迁移与容器化应用指南
  • 24、网页开发技术综合解析
  • 惯导姿态解算中的一下实际问题1(附姿态解算相关的C、matlab代码)
  • 41、迁移到 Linux 上的 SQL Server:工具与方法指南
  • 3分钟搞定百度网盘全速下载:小白也能轻松上手的终极方案
  • 【后端】【Java】一文深入理解 Spring Boot RESTful 风格接口开发
  • 真相!Dify和n8n这两款LLM应用开发平台的最大区别,90%的人都不知道!
  • Linux编辑器—vim的使用
  • 【后端】【Java】RESTful书面应该如何写
  • 【微科普】Louvain 算法,附python代码,让复杂网络 “自己抱团”!
  • Cesium快速入门19:Entity折线材质
  • 令人“悲哀”的 C# 游戏生态 —— 主流引擎支持现状与现实困境
  • 1、掌握 Puppet 4:高效管理 IT 基础设施的秘诀
  • 前端工程师必看:AI+前端+A/B测试 实战指南(小白友好版)
  • 2、初探Puppet清单编写
  • 3、编写首个Puppet清单指南
  • 5、Puppet 主节点与代理节点:全流程解析与性能优化
  • 网络融合
  • 8、利用类和自定义类型模块化清单
  • 智源Emu3.5震撼登场:AI首次实现物理世界统一认知,开启多模态交互新纪元
  • VS-CODE 里的github copilot 不支持自己配置模型api
  • 线性代数(五)向量空间与子空间
  • linux查看内存
  • 27 岁从传统行业裸辞转网络安全,我是如何做到的?
  • 效率提升25%,灵巧操作数采困境被「臂-手共享自主框架」解决