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

【leetCode】2810. 故障键盘

文章目录

    • [2810. 故障键盘](https://leetcode.cn/problems/faulty-keyboard/)
          • 思路一:模拟
          • 代码:
          • 思路二:双端队列
          • 代码:


2810. 故障键盘

在这里插入图片描述

思路一:模拟
  • 用StringBuilder来拼贴字符
  • 遍历字符串,如果遇到i,对拼贴好的进行逆置
  • 否则,进行拼贴
  • 最终返回字符串类型
代码:
   // 2810. 故障键盘public String finalString(String s) {StringBuilder sb = new StringBuilder();for (char x : s.toCharArray()) {if (x == 'i') {sb.reverse();} else {sb.append(x);}}return sb.toString();}
思路二:双端队列
  • 调用双端队列
  • 如果遇到i,需要进行逆置,相当于进行头插法,改变标记
  • 没遇到i,并且标记为真,进行尾插法
  • 最后检查是否需要逆置
代码:
    public String finalString(String s) {// 双端队列Deque<Character> deque = new ArrayDeque<>();StringBuilder sb = new StringBuilder();boolean flg = true;for (char x : s.toCharArray()) {if (x == 'i') {flg = !flg;//碰到i,进行逆置//再次碰到i,反过耒} else if (flg) {//如果为真,添加到队尾deque.addLast(x);}else {//x不等于i,并且由于前一个是i,发生逆转// 相当于添加到队头deque.addFirst(x);}}for (char c:deque) {sb.append(c);}if (!flg){sb.reverse();}return sb.toString();}

点击移步博客主页,欢迎光临~

偷cyk的图

http://www.lryc.cn/news/333623.html

相关文章:

  • xshell7连接ubuntu18.04
  • 真正的力量:实力与人际关系的平衡艺术
  • Acwing.1388 游戏(区间DP对抗思想)
  • Numpy数组转换为csv文件
  • 替代安全指标(Surrogate Safety Measures (SSM) )
  • usb_camera传输视频流编码的问题记录!
  • Linux安装nginx保姆级教程
  • leetcode-判断二分图
  • 算法day30 回溯6
  • 分享three.js实现乐高小汽车
  • gpt的构造和原理
  • 基于springboot实现教师人事档案管理系统项目【项目源码+论文说明】计算机毕业设计
  • K8S之Job和CronJob控制器
  • 基于SSM的基于个人需求和地域特色的外卖推荐系统(有报告)。Javaee项目。ssm项目。
  • 哈佛大学商业评论 --- 第三篇:真实世界中的增强现实
  • 华为ICT七力助推文化产业新质生产力发展
  • FastGpt流程
  • 怎么在UE游戏中加入原生振动效果
  • 【Hadoop技术框架-MapReduce和Yarn的详细描述和部署】
  • 蓝桥杯刷题 前缀和与差分-[3507]异或和之和(C++)
  • background背景图参数边渐变CSS中创建背景图像的渐变效果
  • 『大模型笔记』吴恩达:AI 智能体工作流引领人工智能新趋势
  • 腾讯光子工作室群 一面 (30min)
  • Linux的信号栈的实现(1)
  • Python学习笔记——heapq
  • 搜索与图论——拓扑排序
  • linux CentOS7配置docker的yum源并安装
  • vue结合Elempent-Plus/UI穿梭框更改宽度以及悬浮文本显示
  • 汇川PLC学习Day4:电机参数和气缸控制参数
  • 数据可视化高级技术Echarts(快速上手柱状图进阶操作)