【算法题】2899. 上一个遍历的整数
插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
坚持不懈,越努力越幸运,大家一起学习鸭~~~
题目:
给你一个下标从 0 开始的字符串数组 words ,其中 words[i] 要么是一个字符串形式的正整数,要么是字符串 “prev” 。
我们从数组的开头开始遍历,对于 words 中的每个 “prev” 字符串,找到 words 中的 上一个遍历的整数 ,定义如下:
k 表示到当前位置为止的连续 “prev” 字符串数目(包含当前字符串),令下标从 0 开始的 整数 数组 nums 表示目前为止遍历过的所有整数,同时用 nums_reverse 表示 nums 反转得到的数组,那么当前 “prev” 对应的 上一个遍历的整数 是 nums_reverse 数组中下标为 (k - 1) 的整数。
如果 k 比目前为止遍历过的整数数目 更多 ,那么上一个遍历的整数为 -1 。
请你返回一个整数数组,包含所有上一个遍历的整数。
示例 1:
输入:words = [“1”,“2”,“prev”,“prev”,“prev”]
输出:[2,1,-1]
解释:
对于下标为 2 处的 “prev” ,上一个遍历的整数是 2 ,因为连续 “prev” 数目为 1 ,同时在数组 reverse_nums 中,第一个元素是 2 。
对于下标为 3 处的 “prev” ,上一个遍历的整数是 1 ,因为连续 “prev” 数目为 2 ,同时在数组 reverse_nums 中,第二个元素是 1 。
对于下标为 4 处的 “prev” ,上一个遍历的整数是 -1 ,因为连续 “prev” 数目为 3 ,但总共只遍历过 2 个整数。
示例 2:
输入:words = [“1”,“prev”,“2”,“prev”,“prev”]
输出:[1,2,1]
解释:
对于下标为 1 处的 “prev” ,上一个遍历的整数是 1 。
对于下标为 3 处的 “prev” ,上一个遍历的整数是 2 。
对于下标为 4 处的 “prev” ,上一个遍历的整数是 1 ,因为连续 “prev” 数目为 2 ,同时在数组 reverse_nums 中,第二个元素是 1 。
提示:
1 <= words.length <= 100
words[i] == “prev” 或 1 <= int(words[i]) <= 100
java代码:
// https://space.bilibili.com/206214
class Solution {public List<Integer> lastVisitedIntegers(List<String> words) {List<Integer> ans = new ArrayList<>();List<Integer> a = new ArrayList<>();int k = 0;for (String s : words) {if (s.charAt(0) != 'p') { // 不是 preva.add(Integer.parseInt(s));k = 0;} else {ans.add(++k > a.size() ? -1 : a.get(a.size() - k)); // 倒数第 k 个}}return ans;}
}
相关文章:
【算法题】2899. 上一个遍历的整数
插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 坚持不懈,越努力越幸运,大家一起学习鸭~~~ 题目: 给你一个下标从 0 开始的字符串数组…...
Python+unittest+requests接口自动化测试框架搭建 完整的框架搭建过程
首先配置好开发环境,下载安装Python并下载安装pycharm,在pycharm中创建项目功能目录。如果不会的可以百度Google一下,该内容网上的讲解还是比较多比较全的! 大家可以先简单了解下该项目的目录结构介绍,后面会针对每个文…...
系统架构设计:19 论数据挖掘技术的应用
目录 一 数据挖掘技术 1 数据挖掘的分类 2 数据挖掘的主要方法 一 数据挖掘技术 从技术角度看,数据挖掘可以定义为从大量的、不完全的、有噪声的、模糊的、随机的实际数据中提取隐含在其中的、人们不知道的、但又潜在有用的信息和知识的过程。</...
如何选择高防CDN和高防IP?
目录 前言 一、对高防CDN的选择 1. 加速性能 2. 抗攻击能力 3. 全球覆盖能力 4. 可靠性和稳定性 二、对高防IP的选择 1. 防御能力 2. 服务质量 3. 安全性 4. 价格 三、高防CDN和高防IP的优缺点对比 1. 高防CDN的优缺点 2. 高防IP的优缺点 总结 前言 随着互联网…...
【html】利用生成器函数和video元素,取出指定时间的视频画面
简言 有的时候想截取视频某一秒的视频画面。 手动截取操作麻烦,还得时刻关注视频播放时间。 于是,我搞出来了一个根据视频自动截取特定时间描述的页面。 效果 实现步骤 获取视频对象根据视频时长生成时间选择表单根据表单选择的时间和视频地址&#x…...
第五十九章 学习常用技能 - 将数据从一个数据库移动到另一个数据库
文章目录 第五十九章 学习常用技能 - 将数据从一个数据库移动到另一个数据库 第五十九章 学习常用技能 - 将数据从一个数据库移动到另一个数据库 如果需要将数据从一个数据库移动到另一个数据库,请执行以下操作: 识别包含数据及其索引的Global。 如果…...
虚拟示波器的设计与实现
摘 要 针对传统示波器功能单一、不方便更新升级的缺陷,本文基于虚拟仪器软件LabVIEW和NI PCI-6221数据采集卡设计并实现了一种多功能虚拟示波器,该虚拟示波器不仅具有采集和显示实际信号时域波形的功能,还具有信号产生、波形存储等功能。 测试…...
ImgPlus:基于CodeFormer的图片增强
背景 最近参与了华为云开发者大会AI赛道,做了一个AI图片增强作品,本片文章来简单介绍一下。 正文 作品名称:ImgPlus 赛题技术领域选择: AI,图片增强 使用技术名称: CodeFormer,ECS࿰…...
2024华为校招面试真题汇总及其解答(二)
6.【算法题】三步问题 题目: 三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。 示例1: 输入:n = 3 输出:4说明: 有四种走法示例2: 输入:n = 5输出:1…...
编译链接(Compile Link)
文章目录 前言一、翻译环境1、概念2、翻译环境的组成3、什么是编译链接? 二、编译1、编译的阶段2、预编译3、编译1、什么是语法分析?2、什么是词法分析?3、什么是语义分析?4、什么是符号汇总? 4、汇编1、符号表展示 三…...
14 幂等生产者和事务生产者
kafka消息交付可靠性保障和精确一次语义处理 消息交付可靠性保障,指的kafka对Producer和Consumer要处理的消息提供什么样的承诺。总共就三种:at most once 、at least once、axactly once kafka默认提供的是 at least once。原因是只有Broker提交消息并…...
zabbix部署与监控
目录 一、什么是zabbix? 二、zabbix 监控原理 三、Zabbix 新特性 三、Zabbix 功能组件 四、部署 zabbix zabbix的服务端部署 zabbix的客户端部署 zabbix的服务端部署 一、什么是zabbix? zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络…...
Python 编程基础 | 第五章-类 | 5.8、运算符重载
一、运算符重载 1、Python类内置方法 Python常用内置方法,如下: __init__: 构造函数,在生成对象时调用__del__: 析构函数,释放对象时使用__repr__: 打印,转换__setitem__࿱…...
【前端设计模式】之解释器模式
解释器模式是一种行为设计模式,它用于解释特定语言或规则的表达式。在前端开发中,解释器模式可以用于处理复杂的逻辑或规则,并将其转化为可执行的代码。 解释器模式特性 定义语言规则:解释器模式通过定义语言规则来解析和执行表…...
TiDB 7.4 发版:正式兼容 MySQL 8.0
MySQL 是全球最受欢迎的开源数据库,长期位于 DB-Engines Ranking 排行榜第二名,在世界范围内拥有数量庞大的企业用户和开发者。然而,随着时间的推移,MySQL 用户正面临新挑战。Oracle 官宣将在 2023 年 10 月终止 MySQL 5.7 版本的…...
QT 网络编程 服务端 客户端 QTcpServer
服务端的创建 //创建服务端QTcpServer对象 server new QTcpServer(this);//设置服务端,端口,这里绑定的是主机的所有网卡, server->listen(QHostAddress::Any, 8080);//绑定连接信号与槽 connect(this->server, &QTcpServer::new…...
Stm32_标准库_16_串口蓝牙模块_手机与蓝牙模块通信_手机传入信息能对芯片时间日期进行更改
实现了手机发送信息给蓝牙模块,程序对数据进行分析拆解,并更新自身数据 main.c: #include "stm32f10x.h" // Device header #include "Delay.h" #include "OLED.h" #include "Serial.h" #include "Ti…...
137.【SpringCloud-快速搭建】
微服务框架搭建 (一)、SpringCloud-Parent1.创建一个SpringBoot项目2.导入我们的依赖 (二)、SpringCloud-API (实体类)1.创建一个SpringBoot项目2.导入我们的依赖3.创建我们的实体类 (三)、SpringCloud-dept (业务A)1.创建一个SpringBoot项目2.导入我们的依赖3.配置我们的配置信…...
计算机网络第2章-CDN(4)
视频流和内容分发网 HTTP流和DASH 在HTTP流中,视频只是存储在HTTP服务器中作为一个普通的文件,每个文件有有一个特定的URL。当用户要看视频时,客户与服务器之间创建一个TCP连接并发送HTTP GET请求。 HTTP流具有严重缺陷,即所有…...
Linux常见的指令合集
Linux指令合集 认识linuxlinux基础指令1.pwd 命令2. ls 命令3.cd 命令4. man 命令5. grep 命令6. ps 命令7. kill 命令8. netstat 命令9. date 查看当前系统时间10. echo 打印选项 -e linux文件操作指令1. mkdir 命令2. rmdir 命令3. touch 命令4. rm 命令5. mv 命令6. cp 命令…...
Hunyuan-MT Pro实操手册:对接LangChain构建带记忆的多轮专业咨询翻译Bot
Hunyuan-MT Pro实操手册:对接LangChain构建带记忆的多轮专业咨询翻译Bot 1. 项目概述与目标 Hunyuan-MT Pro 是基于腾讯混元翻译模型的现代化Web翻译终端,而今天我们要做的是让它变得更智能——通过集成LangChain框架,构建一个具备对话记忆…...
告别裸机轮询:在GD32F30x上用USART中断和回调函数实现驱动解耦
GD32F30x串口驱动架构升级:从轮询到中断回调的工程化实践 在嵌入式开发中,串口通信作为最基础的外设接口之一,其实现方式往往决定了整个系统的响应效率和代码质量。许多工程师在项目初期为了快速验证功能,常采用简单的轮询方式处理…...
Keil工程管理效率翻倍:Python脚本实现构建结果自动归档与HTML报告生成
Keil工程管理效率翻倍:Python脚本实现构建结果自动归档与HTML报告生成 在嵌入式开发领域,Keil作为主流开发工具链的核心组件,其工程管理效率直接影响着团队协作和产品迭代速度。传统开发流程中,工程师往往需要手动收集每次构建生成…...
文件上传进阶:PHP Graph SDK多媒体处理与分块上传教程
文件上传进阶:PHP Graph SDK多媒体处理与分块上传教程 【免费下载链接】php-graph-sdk The Facebook SDK for PHP provides a native interface to the Graph API and Facebook Login. https://developers.facebook.com/docs/php 项目地址: https://gitcode.com/g…...
【学术干货免费领】200+学术海报模板免费领|科研展示零成本,高效出图不内耗 | 学术会议海报模板,适配国际国内各类学术场合 | 硕博研究生必需,全学科适配,助力科研成果高光出圈
重磅福利来袭!200学术海报模板,全程免费领取,零成本解锁科研展示新方式!适配以下各类科研相关人群:硕博研究生群体包括硕士研究生和博士研究生适用于不同研究阶段:从开题报告撰写到学位论文完成特别适合需要…...
毕业设计实战:基于SpringBoot+Vue+MySQL的智慧党建系统设计与实现指南
毕业设计实战:基于SpringBootVueMySQL的智慧党建系统设计与实现指南 在开发“基于SpringBootVueMySQL的智慧党建系统”毕业设计时,曾因活动报名记录表未通过党员ID与党建活动ID双外键关联踩过关键坑——初期仅单独设计报名记录表的报名编号字段ÿ…...
PdgCntEditor三步搞定PDF书签目录自动生成
1. 为什么你需要PDF书签目录? 每次打开几百页的PDF文档,像无头苍蝇一样滑动滚动条找内容?这种体验我太懂了。上周处理一份300多页的技术手册,光是翻目录就花了半小时,直到我发现PdgCntEditor这个神器。它能把杂乱无章…...
S3 文件操作进阶实践:从基础上传到完整性保障
1. S3文件操作的核心挑战与解决方案 第一次接触AWS S3时,很多人会觉得文件上传下载不就是调用几个API的事?但真正投入生产环境后,各种问题就会接踵而至。我见过最典型的案例是某电商平台在促销期间,因为文件上传没有做完整性校验…...
3分钟快速上手:免费高效的Elasticsearch可视化工具Elasticvue终极指南
3分钟快速上手:免费高效的Elasticsearch可视化工具Elasticvue终极指南 【免费下载链接】elasticvue Elasticsearch gui for the browser 项目地址: https://gitcode.com/gh_mirrors/el/elasticvue 你是否曾经为复杂的Elasticsearch集群管理而烦恼?…...
嵌入式轻量级3D数学库mmath:面向MCU的定点/浮点向量矩阵运算
1. 项目概述mmath是一个专为嵌入式系统设计的轻量级三维数学库,其核心目标是在资源受限的 MCU(如 Cortex-M0/M3/M4)上提供高效、无浮点依赖(可选)、内存占用可控的 3D 向量、矩阵、四元数及空间变换运算能力。与通用桌…...
