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

【算法题】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. 上一个遍历的整数

插&#xff1a; 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 坚持不懈&#xff0c;越努力越幸运&#xff0c;大家一起学习鸭~~~ 题目&#xff1a; 给你一个下标从 0 开始的字符串数组…...

Python+unittest+requests接口自动化测试框架搭建 完整的框架搭建过程

首先配置好开发环境&#xff0c;下载安装Python并下载安装pycharm&#xff0c;在pycharm中创建项目功能目录。如果不会的可以百度Google一下&#xff0c;该内容网上的讲解还是比较多比较全的&#xff01; 大家可以先简单了解下该项目的目录结构介绍&#xff0c;后面会针对每个文…...

系统架构设计:19 论数据挖掘技术的应用

目录 一 数据挖掘技术 1 数据挖掘的分类 2 数据挖掘的主要方法 一 数据挖掘技术 从技术角度看,数据挖掘可以定义为从大量的、不完全的、有噪声的、模糊的、随机的实际数据中提取隐含在其中的、人们不知道的、但又潜在有用的信息和知识的过程。</...

如何选择高防CDN和高防IP?

目录 前言 一、对高防CDN的选择 1. 加速性能 2. 抗攻击能力 3. 全球覆盖能力 4. 可靠性和稳定性 二、对高防IP的选择 1. 防御能力 2. 服务质量 3. 安全性 4. 价格 三、高防CDN和高防IP的优缺点对比 1. 高防CDN的优缺点 2. 高防IP的优缺点 总结 前言 随着互联网…...

【html】利用生成器函数和video元素,取出指定时间的视频画面

简言 有的时候想截取视频某一秒的视频画面。 手动截取操作麻烦&#xff0c;还得时刻关注视频播放时间。 于是&#xff0c;我搞出来了一个根据视频自动截取特定时间描述的页面。 效果 实现步骤 获取视频对象根据视频时长生成时间选择表单根据表单选择的时间和视频地址&#x…...

第五十九章 学习常用技能 - 将数据从一个数据库移动到另一个数据库

文章目录 第五十九章 学习常用技能 - 将数据从一个数据库移动到另一个数据库 第五十九章 学习常用技能 - 将数据从一个数据库移动到另一个数据库 如果需要将数据从一个数据库移动到另一个数据库&#xff0c;请执行以下操作&#xff1a; 识别包含数据及其索引的Global。 如果…...

虚拟示波器的设计与实现

摘 要 针对传统示波器功能单一、不方便更新升级的缺陷&#xff0c;本文基于虚拟仪器软件LabVIEW和NI PCI-6221数据采集卡设计并实现了一种多功能虚拟示波器&#xff0c;该虚拟示波器不仅具有采集和显示实际信号时域波形的功能&#xff0c;还具有信号产生、波形存储等功能。 测试…...

ImgPlus:基于CodeFormer的图片增强

背景 最近参与了华为云开发者大会AI赛道&#xff0c;做了一个AI图片增强作品&#xff0c;本片文章来简单介绍一下。 正文 作品名称&#xff1a;ImgPlus 赛题技术领域选择&#xff1a; AI&#xff0c;图片增强 使用技术名称&#xff1a; CodeFormer&#xff0c;ECS&#xff0…...

2024华为校招面试真题汇总及其解答(二)

6.【算法题】三步问题 题目: 三步问题。有个小孩正在上楼梯,楼梯有n阶台阶,小孩一次可以上1阶、2阶或3阶。实现一种方法,计算小孩有多少种上楼梯的方式。结果可能很大,你需要对结果模1000000007。 示例1: 输入:n = 3 输出:4说明: 有四种走法示例2: 输入:n = 5输出:1…...

编译链接(Compile Link)

文章目录 前言一、翻译环境1、概念2、翻译环境的组成3、什么是编译链接&#xff1f; 二、编译1、编译的阶段2、预编译3、编译1、什么是语法分析&#xff1f;2、什么是词法分析&#xff1f;3、什么是语义分析&#xff1f;4、什么是符号汇总&#xff1f; 4、汇编1、符号表展示 三…...

14 幂等生产者和事务生产者

kafka消息交付可靠性保障和精确一次语义处理 消息交付可靠性保障&#xff0c;指的kafka对Producer和Consumer要处理的消息提供什么样的承诺。总共就三种&#xff1a;at most once 、at least once、axactly once kafka默认提供的是 at least once。原因是只有Broker提交消息并…...

zabbix部署与监控

目录 一、什么是zabbix&#xff1f; 二、zabbix 监控原理 三、Zabbix 新特性 三、Zabbix 功能组件 四、部署 zabbix zabbix的服务端部署 zabbix的客户端部署 zabbix的服务端部署 一、什么是zabbix&#xff1f; zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络…...

Python 编程基础 | 第五章-类 | 5.8、运算符重载

一、运算符重载 1、Python类内置方法 Python常用内置方法&#xff0c;如下&#xff1a; __init__&#xff1a; 构造函数&#xff0c;在生成对象时调用__del__&#xff1a; 析构函数&#xff0c;释放对象时使用__repr__&#xff1a; 打印&#xff0c;转换__setitem__&#xff1…...

【前端设计模式】之解释器模式

解释器模式是一种行为设计模式&#xff0c;它用于解释特定语言或规则的表达式。在前端开发中&#xff0c;解释器模式可以用于处理复杂的逻辑或规则&#xff0c;并将其转化为可执行的代码。 解释器模式特性 定义语言规则&#xff1a;解释器模式通过定义语言规则来解析和执行表…...

TiDB 7.4 发版:正式兼容 MySQL 8.0

MySQL 是全球最受欢迎的开源数据库&#xff0c;长期位于 DB-Engines Ranking 排行榜第二名&#xff0c;在世界范围内拥有数量庞大的企业用户和开发者。然而&#xff0c;随着时间的推移&#xff0c;MySQL 用户正面临新挑战。Oracle 官宣将在 2023 年 10 月终止 MySQL 5.7 版本的…...

QT 网络编程 服务端 客户端 QTcpServer

服务端的创建 //创建服务端QTcpServer对象 server new QTcpServer(this);//设置服务端&#xff0c;端口&#xff0c;这里绑定的是主机的所有网卡&#xff0c; server->listen(QHostAddress::Any, 8080);//绑定连接信号与槽 connect(this->server, &QTcpServer::new…...

Stm32_标准库_16_串口蓝牙模块_手机与蓝牙模块通信_手机传入信息能对芯片时间日期进行更改

实现了手机发送信息给蓝牙模块&#xff0c;程序对数据进行分析拆解&#xff0c;并更新自身数据 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流中&#xff0c;视频只是存储在HTTP服务器中作为一个普通的文件&#xff0c;每个文件有有一个特定的URL。当用户要看视频时&#xff0c;客户与服务器之间创建一个TCP连接并发送HTTP GET请求。 HTTP流具有严重缺陷&#xff0c;即所有…...

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 命令…...

GPTPortal:基于模型抽象层的AI应用快速部署与统一管理平台

1. 项目概述&#xff1a;一个面向开发者的AI应用快速部署门户 最近在GitHub上看到一个挺有意思的项目&#xff0c;叫GPTPortal。乍一看名字&#xff0c;可能会让人联想到某个特定的AI模型服务&#xff0c;但深入了解一下就会发现&#xff0c;它的定位其实更偏向于一个“门户”或…...

Kali Linux 新手速成:Docker 部署实战与靶场环境一键构建

1. Kali Linux与Docker的黄金组合 刚接触网络安全的朋友们&#xff0c;肯定对Kali Linux不陌生。这个专为安全测试设计的操作系统&#xff0c;就像是一把瑞士军刀&#xff0c;集成了各种强大的工具。但今天我要分享的是一个更高效的玩法——用Docker来部署漏洞靶场。 为什么说这…...

深入PEX8796:从Serdes到Virtual Switch,图解PCIe交换芯片的三种工作模式

深入解析PEX8796&#xff1a;PCIe交换芯片的架构设计与模式创新 在高速数据传输领域&#xff0c;PCIe交换芯片如同交通枢纽般连接着计算系统的各个组件。作为PLX公司&#xff08;现已被博通收购&#xff09;的经典之作&#xff0c;PEX8796凭借其灵活的架构设计和多样化的操作模…...

Python-ADB协议实现原理:深入理解ADB和Fastboot通信机制

Python-ADB协议实现原理&#xff1a;深入理解ADB和Fastboot通信机制 【免费下载链接】python-adb Python ADB Fastboot implementation 项目地址: https://gitcode.com/gh_mirrors/py/python-adb Python-ADB是一个强大的开源项目&#xff0c;提供了ADB&#xff08;Andr…...

java微服务驱动的社区平台:友猫社区的功能模块与实现逻辑

一、项目概述 友猫社区平台是由宠友信息技术有限公司研发的一体化社区生态系统&#xff0c;结合了内容分享、即时通讯、社交关系链与商城电商等功能。平台采用前后端分离架构&#xff0c;以高可扩展性、灵活配置与多端兼容性为设计核心&#xff0c;能够适应不同类型的企业及创…...

AppleRa1n终极指南:5步免费绕过iOS 15-16 iCloud激活锁

AppleRa1n终极指南&#xff1a;5步免费绕过iOS 15-16 iCloud激活锁 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否遇到过这样的情况&#xff1a;忘记了自己iPhone的Apple ID密码&#xff0c;或…...

2026 国产桌面 AI 智能体横向评测:博云 BoClaw vs AutoClaw vs QClaw vs MaxClaw vs WorkBuddy

一、引言2026 年初&#xff0c;一款名为 OpenClaw 的开源 AI 智能体框架以创纪录的速度蹿红全球——短短数月突破 30 万 GitHub Star&#xff0c;Token 使用量一度占据 OpenRouter 平台总量的约 13%。它之所以引发轰动&#xff0c;核心在于首次让 AI 真正实现从“动口”到“动手…...

CTF新手必看:用010 Editor修复PNG图片CRC错误,轻松拿下BUUCTF那道‘一叶障目’题

CTF新手实战&#xff1a;用010 Editor修复PNG图片CRC校验错误 拿到一张打不开的PNG图片&#xff0c;显示"CRC校验失败"&#xff1f;别急着放弃&#xff0c;这可能是CTF比赛中故意设置的陷阱。作为MISC方向的经典题型&#xff0c;修改PNG文件头参数是常见的出题套路。…...

在OpenClaw中快速接入Taotoken实现AI助手功能

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 在OpenClaw中快速接入Taotoken实现AI助手功能 OpenClaw是一款功能强大的AI助手工具&#xff0c;能够帮助开发者进行代码生成、问题…...

朋升爱生活

我爱生活。...