华为OD机试真题 Java 实现【火车进站】【牛客练习题】
一、题目描述
给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号,火车站只有一个方向进出,同时停靠在火车站的列车中,只有后进站的出站了,先进站的才能出站。
要求输出所有火车出站的方案,以字典序排序输出。
二、输入描述
第一行输入一个正整数N(0 < N <= 10),第二行包括N个正整数,范围为1到10。
三、输出描述
输出以字典序从小到大排序的火车出站序列号,每个编号以空格隔开,每个输出序列换行。
四、解题思路
- 首先通过输入获取火车的数量N和火车入站序列id;
- 创建一个结果集列表,用于存储所有火车出站的方案;
- 创建一个栈,用于模拟火车的进站和出站过程;
- 调用递归函数trainOut,开始计算火车出站的方案;
- 递归函数trainOut的参数包括当前考虑的火车编号i,当前栈的状态s,当前已出站的火车序列str,已出站的火车数量n;
- 如果所有火车均已出站(n等于火车数量N),将当前结果保存到结果集列表中;
- 如果栈非空,表示可以将栈顶火车出栈,将栈顶元素弹出,递归调用trainOut函数,更新已出站的火车序列和数量;
- 将弹出的火车编号加入结果序列str,并加上空格;
- 恢复栈
相关文章:
华为OD机试真题 Java 实现【火车进站】【牛客练习题】
一、题目描述 给定一个正整数N代表火车数量,0<N<10,接下来输入火车入站的序列,一共N辆火车,每辆火车以数字1-9编号,火车站只有一个方向进出,同时停靠在火车站的列车中,只有后进站的出站了,先进站的才能出站。 要求输出所有火车出站的方案,以字典序排序输出。 …...
c#快速入门(下)
欢迎来到Cefler的博客😁 🕌博客主页:那个传说中的man的主页 🏠个人专栏:题目解析 🌎推荐文章:题目大解析2 目录 👉🏻Inline和lambda委托和lambda 👉…...
基于深度学习的目标姿态检测方法_kaic
目录 摘要 第1章 引言 1.1 研究背景和意义 1.2 国内外研究现状 1.3 主要内容 第2章 单目相机的目标姿态检测技术 2.1单目相机的工作原理 2.2目标姿态检测 2.3已有的目标姿态检测方法及其局限性 2.4本章总结 第3章 构建数据集 3.1 数据集来源 3.2数据集标注 3.3数据集分析 3.4本…...
Pycharm设置Python每个文件开头自定义模板(带上声明字符编码、作者名、时间等)
Pycharm设置地址: 在File---settings---Editor---File and Code Templates---Python script 脚本里添加: 模板声明设置参考: # ---encoding:utf-8--- # Time : ${DATE} ${HOUR}:${MINUTE} # Author : 作者名 # Email :你的邮箱 # Sit…...
Gem相关操作命令
Gem相关操作命令 gem -v # 查看 gem 版本gem source # 查看 gem 配置源 gem source -l # 查看 gem 配置源目录 gem sources -a url # 添加 gem 配置源(url 需换成网址) gem sources --add url # 添加 gem 配置源(url 需换成网址)…...
软件测试2023年行情怎么样?仔细讲解!
目录 前言: 普通功能测试人员不建议跳槽 还有一个要求就是要对业务的极致理解 那么产业互联网趋势会导致什么呢? 现在跳槽涨薪需要掌握到什么样的技术呢? 给大家一些跳槽建议 前言: 软件测试是为了发现程序中的错误而执行程序的…...
【1130. 叶值的最小代价生成树】
来源:力扣(LeetCode) 描述: 给你一个正整数数组 arr,考虑所有满足以下条件的二叉树: 每个节点都有 0 个或是 2 个子节点。数组 arr 中的值与树的中序遍历中每个叶节点的值一一对应。每个非叶节点的值等于…...
Linux各个目录的全称及含义
/ 根目录,包含整个文件系统的根节点。 /bin : Binary Directory 二进制文件目录,包含一些基本的可执行程序。 /boot : Boot Directory 包含启动系统所需的文件,如内核和引导程序。 /dev : Device Directory 设备文件目录,…...
Cookie和Session原理详解
目录 前言 Cookie Session 会话机制 Cookie和Session的区别 Servlet中对Session和Cookie的封装 代码实例:实现用户登录 约定前后端交互的接口 前端页面: 后端实现 login index 总结 前言 在web的发展史中,我们知道浏览器和服务…...
小程序自动化测试
背景 近期团队打算做一个小程序自动化测试的工具,期望能够做到业务人员操作一遍小程序后,自动还原之前的操作路径,并且捕获操作过程中发生的异常,以此来判断这次发布是否会影响小程序的基础功能。 上述描述看似简单,…...
【linux系统操作】 - 技术一览
文章目录 1. 用户管理2. 文件管理3. 文件系统4. 字符处理5. 网络管理6. 进程管理7. 软件安装8. vi和vim编辑器9. 正则表达式 1. 用户管理 1.用户和用户组 2.账号管理 新增和删除用户、组;检查用户信息切换用户信息、用其他用户身份执行例行任务管理 : 周期性执行任…...
yield和sleep 区别
yield和sleep对比 sleepyieldsleep会导致当前线程暂停指定的时间,没有CPU时间片的消耗。yield只是对CPU调度器的一个提示,如果CPU调度器没有忽略这个提示,它会导致线程上下文的切换。sleep会使线程短暂block,会在给定的时间内释放…...
Redis 注册服务,自动启动
通常情况下我们可以通过 redis-server.exe 和配置文件启动redis服务 : 命令: redis-server.exe redis.windows.conf 另外开启一个命令行窗口 redis-cli.exe 即可做一些简单的操作命令行 但如果我们关闭控制台,那么Redis服务也跟随着一起关闭了&#x…...
华为OD机试真题 Java 实现【字符统计】【2023 B卷 100分】
一、题目描述 输入一个只包含小写英文字母和数字的字符串,按照不同字符统计个数由多到少输出统计结果,如果统计的个数相同,则按照ASCII码由小到大排序输出。 数据范围:字符串长度满足 1≤len(str)≤1000 。 二、输入描述 一个只包含小写英文字母和数字的字符串。 三、…...
ASP.NET Core MVC 从入门到精通之自动映射(一)
随着技术的发展,ASP.NET Core MVC也推出了好长时间,经过不断的版本更新迭代,已经越来越完善,本系列文章主要讲解ASP.NET Core MVC开发B/S系统过程中所涉及到的相关内容,适用于初学者,在校毕业生,…...
4. WebGPU 存储缓冲区 (WebGPU Storage Buffers)
这篇文章是关于存储缓冲区的,我们从上一篇文章暂停的地方继续。 存储缓冲区在许多方面类似于统一缓冲区。如果我们所做的只是将 JavaScript 中的 UNIFORM 更改为 STORAGE 并将 WGSL 中的 var 更改为 var<storage, read> ,那么上一页中的示例就可以…...
ChatGPT 插件功能深度解析:acquire、scholarai、form
引言 在我们的日常工作中,插件扮演着重要的角色,它们可以帮助我们提高工作效率,简化复杂的任务。在这篇文章中,我将详细介绍三个非常实用的插件:acquire、scholarai和form。 1、acquire 插件详解 acquire插件是一个…...
【面试集锦 - 汽车电子 - ASPICE]
ASPICE ASPICE(Automotive Software Performance Improvement and Capability dEtermination)是一种针对汽车电子行业的软件过程评估和改进模型。它是一种国际标准,旨在帮助汽车制造商和供应商评估和改进其软件开发过程的能力,以…...
深入探索Vue.js响应式原理及其实现机制
导语:Vue.js的核心特性之一是其强大的响应式系统,它使得数据和视图能够自动保持同步。在本文中,我们将深入探索Vue.js的响应式原理及其实现机制,帮助您更好地理解Vue.js的工作方式。 数据劫持:Vue.js的响应式系统通过数…...
Spark SQL概述、数据帧与数据集
文章目录 一、准备工作1、准备数据文件2、启动Spark Shell 二、加载数据为Dataset1、读文件得数据集 三、给数据集添加元数据信息1、定义学生样例类2、导入隐式转换3、将数据集转换成学生数据集4、对学生数据集进行操作(1)显示数据集内容(2&a…...
基于鲸鱼优化算法改进XGBoost在MATLAB中的时间序列预测性能(迭代次数、最大深度和学习...
基于鲸鱼优化算法优化XGBoost(WOA-XGBoost)的时间序列预测 WOA-XGBoost时间序列 采用交叉验证抑制过拟合问题 优化参数为迭代次数、最大深度和学习率 matlab代码,注:暂无Matlab版本要求 -- 推荐 2016B 版本及以上 注:采用 XGBoost 工具箱&…...
Z-Image-ComfyUI场景应用:为社交媒体快速生成配图,提升内容创作效率
Z-Image-ComfyUI场景应用:为社交媒体快速生成配图,提升内容创作效率 1. 社交媒体内容创作的痛点与解决方案 每天运营社交媒体账号时,你是否也面临这样的困境:精心撰写的文案已经完成,却卡在配图制作环节?…...
Amlogic S9XXX Armbian刷机完全指南:从入门到进阶的5个关键问题
Amlogic S9XXX Armbian刷机完全指南:从入门到进阶的5个关键问题 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l,…...
别再手动查ID了!用R包一键搞定单细胞Marker基因ID转换(附org.Hs.eg.db实战)
单细胞Marker基因ID转换实战:用org.Hs.eg.db实现高效精准映射 刚完成单细胞聚类分析的研究者,常常会面临一个看似简单却极其耗时的任务——将Marker基因的Symbol标识转换为标准的Entrez ID。这个步骤虽然基础,却直接影响后续GO富集分析的可靠…...
RobotStudio新手必看:5分钟搞定夹取工件程序(附完整代码)
RobotStudio零基础实战:从夹取工件到高效编程的完整指南 第一次打开RobotStudio时,面对复杂的界面和陌生的术语,很多新手会感到无从下手。但别担心,掌握几个核心概念和操作步骤,你就能快速实现基础的夹取工件功能。本文…...
Qwen3-Reranker-8B开源大模型:支持HuggingFace Transformers原生加载
Qwen3-Reranker-8B开源大模型:支持HuggingFace Transformers原生加载 如果你正在构建一个智能搜索系统、问答机器人或者文档分析工具,那么“重排序”这个环节你一定不陌生。简单来说,它就像一个智能裁判,当你的检索系统从海量文档…...
Dism++深度解析:Windows系统管理与优化专业指南
Dism深度解析:Windows系统管理与优化专业指南 【免费下载链接】Dism-Multi-language Dism Multi-language Support & BUG Report 项目地址: https://gitcode.com/gh_mirrors/di/Dism-Multi-language Dism作为一款功能强大的开源Windows系统管理工具&…...
Kindle Comic Converter:漫画电子书制作的专业工具
Kindle Comic Converter:漫画电子书制作的专业工具 【免费下载链接】kcc KCC (a.k.a. Kindle Comic Converter) is a comic and manga converter for ebook readers. 项目地址: https://gitcode.com/gh_mirrors/kc/kcc Kindle Comic Converter(简…...
PasteMD算力优化成果:Ollama量化后llama3:8b仅需4GB内存,推理速度提升2.3倍
PasteMD算力优化成果:Ollama量化后llama3:8b仅需4GB内存,推理速度提升2.3倍 1. 项目背景与优化挑战 PasteMD是一款基于本地Ollama框架的剪贴板智能美化工具,它能够将杂乱的文本内容一键转换为结构化的Markdown格式。这个工具完全私有化部署…...
解决企业级流程建模挑战:基于Vue与bpmn.js的Flowable工作流设计器深度集成指南
解决企业级流程建模挑战:基于Vue与bpmn.js的Flowable工作流设计器深度集成指南 【免费下载链接】workflow-bpmn-modeler 🔥 flowable workflow designer based on vue and bpmn.io7.0 项目地址: https://gitcode.com/gh_mirrors/wo/workflow-bpmn-mode…...
