数组模拟双链表
文章目录
- Question
- Ideas
- Code
Question
实现一个双链表,双链表初始为空,支持 5
种操作:
在最左侧插入一个数;
在最右侧插入一个数;
将第 k
个插入的数删除;
在第 k
个插入的数左侧插入一个数;
在第 k
个插入的数右侧插入一个数
现在要对该链表进行 M
次操作,进行完所有操作后,从左到右输出整个链表。
注意:题目中第 k
个插入的数并不是指当前链表的第 k
个数。例如操作过程中一共插入了 n
个数,则按照插入的时间顺序,这 n
个数依次为:第 1
个插入的数,第 2
个插入的数,…第 n
个插入的数。
输入格式
第一行包含整数 M
,表示操作次数。
接下来 M
行,每行包含一个操作命令,操作命令可能为以下几种:
L x,表示在链表的最左端插入数 x
。
R x,表示在链表的最右端插入数 x
。
D k,表示将第 k
个插入的数删除。
IL k x,表示在第 k
个插入的数左侧插入一个数。
IR k x,表示在第 k
个插入的数右侧插入一个数。
输出格式
共一行,将整个链表从左到右输出。
数据范围
1≤M≤100000
所有操作保证合法。
输入样例:
10
R 7
D 1
L 3
IL 2 10
D 3
IL 2 7
L 8
R 9
IL 4 7
IR 2 2
输出样例:
8 7 7 3 2 9
Ideas
Code
#include <iostream>
#include <string>using namespace std;
const int N = 1E5 + 10;
int e[N], l[N], r[N], idx;void init(){r[0] = 1;l[1] = 0;idx = 2;
}void add(int k, int x){e[idx] = x;r[idx] = r[k];l[idx] = k;l[r[k]] = idx;r[k] = idx;idx ++;
}void del(int k){r[l[k]] = r[k];l[r[k]] = l[k];
}
int main(){int m;cin >> m;init();while(m --){string op;cin >> op;if (op == "L"){int x; cin >> x;add(0, x);}else if (op == "R"){int x;cin >> x;add(l[1], x);}else if(op == "D"){int k;cin >> k;del(k + 1);}else if (op == "IL"){int k, x;cin >> k >> x;add(l[k + 1], x);}else{int k, x;cin >> k >> x;add(k + 1, x);}}for (int i = r[0]; i != 1; i = r[i]) cout << e[i] << ' ';return 0;
}
相关文章:
数组模拟双链表
文章目录 QuestionIdeasCode Question 实现一个双链表,双链表初始为空,支持 5 种操作: 在最左侧插入一个数; 在最右侧插入一个数; 将第 k 个插入的数删除; 在第 k 个插入的数左侧插入一个数; …...
鸡群优化(CSO)算法(含MATLAB代码)
先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年…...
3. 安装lombok maven镜像设置
安装lombok & maven镜像设置 一、maven镜像设置 Maven:负责进行项目管理、依赖工具管理的 软件。 快捷解决方案: 1.方法一 直接配置系统默认的文件 各个人因为登录的用户名不同,所以目录名不同。 2.方法二 自定义本地仓库的位置 完成之后重新打…...
详谈Spring
作者:爱塔居 专栏:JavaEE 目录 一、Spring是什么? 1.1 Spring框架的一些核心特点: 二、IoC(控制反转)是什么? 2.1 实现手段 2.2 依赖注入(DI)的实现原理 2.3 优点 三、AO…...
PyTorch入门之【AlexNet】
参考文献:https://www.bilibili.com/video/BV1DP411C7Bw/?spm_id_from333.999.0.0&vd_source98d31d5c9db8c0021988f2c2c25a9620 AlexNet 是一个经典的卷积神经网络模型,用于图像分类任务。 目录 大纲dataloadermodeltraintest 大纲 各个文件的作用&…...
(六)正点原子STM32MP135移植——内核移植
目录 一、概述 二、编译官方代码 三、移植 四、编译 一、概述 前面已经移植好了TF-A、optee、u-boot,在u-boot能正常跑起来的情况下,现在来移植内核。 二、编译官方代码 进入kernel目录 2.1 解压源码、打补丁 /* 解压源码 */ tar xf linux-6.1.28.…...
自媒体工作内容管理助手
内容助手 访问地址:editor.yunwow.cn 背景介绍 最近在学习流量运营, 流量运营的第一站是内容创作, 我试过不少原创内容,都是跟生活相关的例如:录一段联琴的视频、录一段秋天的风景、写一段生活感悟、发一段小宠物的生…...
Echarts 教程一
Echarts 教程一 可视化大屏幕适配方案可视化大屏幕布局方案Echart 图表通用配置部分解决方案1. titile2. tooltip3. xAxis / yAxis 常用配置4. legend5. grid6. series7.color Echarts API 使用全局echarts对象echarts实例对象 可视化大屏幕适配方案 rem flexible.js 关于flex…...
【Kubernetes】Kubernetes 对象是什么?
什么是 Kubernetes 对象?常见的 Kubernetes 对象参考🔎感谢 💖 什么是 Kubernetes 对象? Kubernetes 对象是持久化的实体,用于描述整个集群的状态和配置。它们是在 etcd 等持久化存储中存储的,因此它们的状…...
【C++设计模式之模板模式】分析及示例
C之模板模式 描述实现原理示例步骤1步骤1 分析步骤2步骤2 分析调用输出结果 结论 描述 模板模式(Template Pattern)是设计模式中的一种行为型模式。 该模式定义一个操作中的算法骨架,而将具体的算法实现延迟到子类中。 模板模式使得子类可以…...
C#捕捉全局异常
1.运行图片 2.源码 using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; using System.Windows.Forms;namespace 捕捉全局异常 {internal static class Program{/// <summary>/// 应用程序的主入口点。/// </summary…...
java.text.ParseException: Unparseable date: “2023-09-06T09:08:18“
问题描述: java.text.ParseException: Unparseable date: “2023-09-06T09:08:18” 这是在String类型转Date类型出现的错误,主要是String类型时间中间有一个T在转换的过程出现问题. 解决方法: SimpleDateFormat simpleDateFormat new SimpleDateFormat…...
macOS 下如何优雅的使用 Burp Suite 汉化
转载 https://www.sqlsec.com/2019/11/macbp.html 主要内容是根据上面的来的 下面总结个人出现错误的地方 主要是优雅配置方面 不要直接复制粘贴 看清楚人家的内容 下面的可以直接复制粘贴 --add-opensjava.desktop/javax.swingALL-UNNAMED --add-opensjava.base/java.lang…...
进程同步与进程互斥
1.进程同步 知识点回顾: 进程具有异步性的特征。 异步性是指,各并发执行的进程以各自独立的、不可预知的速度向前推进。 如何解决这种异步问题,就是“进程同步”所讨论的内容。 同步亦称直接制约关系,它是指为完成某种任务而建立的两个或多…...
公司安防工程简要介绍及系统需求分析
多年来 从事安保监控领域的经验,在系统的功能要求、设备选型、施 工控制、 后期维护、人员配备等各方面反复论证,最终形成了本方案。在系统 的硬件选择上,把系统的稳定性、安全性、可靠性放在第一位。根据 招标文件的要求选用当今安防行业具…...
JMETER自适应高分辨率的显示器
系列文章目录 历史文章 每天15分钟JMeter入门篇(一):Hello JMeter 每天15分钟JMeter入门篇(二):使用JMeter实现并发测试 每天15分钟JMeter入门篇(三):认识JMeter的逻辑控…...
Linux工具(三)
继Linux工具(一)和Linux工具(二),下面我们就来讲解Linux最后的两个工具,分别是代码托管的版本控制器git和代码调试器gdb。 目录 1.git-版本控制器 从0到1的实现git代码托管 检测并安装git 新建git仓库…...
基于SSM+Vue的鲜花销售系统设计与实现
末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用Vue技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…...
矢量图形编辑软件illustrator 2023 mac特点介绍
illustrator 2023 mac是一款矢量图形编辑软件,用于创建和编辑排版、图标、标志、插图和其他类型的矢量图形。 illustrator mac软件特点 矢量图形:illustrator创建的图形是矢量图形,可以无限放大而不失真,这与像素图形编辑软件&am…...
【计算机网络面试题(62道)】
文章目录 计算机网络面试题(62道)基础1.**说下计算机网络体系结构2.说一下每一层对应的网络协议有哪些?3.那么数据在各层之间是怎么传输的呢? 网络综合4.**从浏览器地址栏输入 url 到显示主页的过程?5.说说 DNS 的解析…...
别再让AI失忆了!手把手教你用Mem0为ChatGPT添加长期记忆(附Next.js实战代码)
为Next.js聊天应用注入长期记忆:Mem0集成实战指南 当你的AI助手开始记住用户的咖啡偏好和生日祝福时,整个交互体验会发生质的变化。本文将带你从零开始,在Next.js应用中实现这种"记忆魔法"。 1. 环境准备与Mem0初始化 首先创建一个…...
网络工程师-核心考点:计算机硬件基础全解析
一、引言计算机硬件基础是软考网络工程师考试的前置知识点,占选择题分值约 3-5 分,是理解网络设备(路由器、交换机、服务器)硬件架构的底层基础。本知识点体系起源于 1945 年冯・诺依曼提出的存储程序思想,历经 70 余年…...
如何用3步实现Jable视频高效下载?开源工具jable-download的完整解决方案
如何用3步实现Jable视频高效下载?开源工具jable-download的完整解决方案 【免费下载链接】jable-download 方便下载jable的小工具 项目地址: https://gitcode.com/gh_mirrors/ja/jable-download jable-download是一款专为普通用户设计的Jable视频下载工具&am…...
手把手教你用51单片机实现蓝牙+WiFi双模控制智能小车(附OLED显示速度)
从零构建51单片机智能小车:双模无线控制与速度显示实战指南 引言 想象一下,当你坐在沙发上,用手机就能遥控一台自制的小车在房间里自由穿梭,同时还能实时查看它的行驶速度——这种极客般的体验其实并不遥远。基于51单片机的智能…...
当地的美国展会搭建制作公司口碑排行
随着中国企业出海参展日益频繁,选择一家可靠的美国本土搭建商成为关键决策。许多企业主发现,直接对接海外供应商时,常面临沟通不畅、报价模糊、落地效果与设计图相差甚远等问题。这背后,是原有依赖单一信息渠道或熟人推荐的模式正…...
5分钟搞定PaddleOCR文字识别:Python版保姆级教程(附完整代码)
5分钟极速上手PaddleOCR:Python实战指南与避坑手册 第一次接触OCR技术时,我被那些复杂的配置参数和晦涩的文档吓退了三次。直到发现PaddleOCR这个"开箱即用"的工具,才明白原来文字识别可以如此简单。本文将带你用最直接的方式&…...
从苹果AirTag到国产车钥匙:拆解UWB芯片厂商格局与选型指南(附功耗实测参考)
从苹果AirTag到国产车钥匙:拆解UWB芯片厂商格局与选型指南 当你的手机靠近车门自动解锁,或是通过AirTag精准定位背包位置时,背后都离不开一项关键技术——UWB(超宽带)。这种厘米级精度的空间感知能力,正在重…...
打破学术写作边界:NativeOverleaf离线工作流全解析
打破学术写作边界:NativeOverleaf离线工作流全解析 【免费下载链接】NativeOverleaf Next-level academia! Repository for the Native Overleaf project, attempting to integrate Overleaf with native OS features for macOS, Linux and Windows. 项目地址: ht…...
小白也能懂:Qwen3-TTS-Tokenizer-12Hz的API调用与Python示例
小白也能懂:Qwen3-TTS-Tokenizer-12Hz的API调用与Python示例 1. 前言:音频编解码器能做什么? 想象一下,你录制了一段重要的会议录音,文件大小有50MB,想通过微信发给同事,却发现超过了文件大小…...
RWKV7-1.5B-g1a参数详解:为何默认top_p=0.3更适合中文生成?语言分布实证
RWKV7-1.5B-g1a参数详解:为何默认top_p0.3更适合中文生成?语言分布实证 1. 模型概述 rwkv7-1.5B-g1a是基于RWKV-7架构的多语言文本生成模型,特别适合中文场景下的基础问答、文案续写和简短总结任务。作为1.5B参数量的轻量级模型,…...
