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

网站开发那个好湖北短视频搜索seo

网站开发那个好,湖北短视频搜索seo,公众号怎么制作投票活动,大名网站建设公司2810.你的笔记本键盘存在故障,每当你在上面输入字符 ‘i’ 时,它会反转你所写的字符串。而输入其他字符则可以正常工作。 给你一个下标从 0 开始的字符串 s ,请你用故障键盘依次输入每个字符。 返回最终笔记本屏幕上输出的字符串。 示例 1&am…

2810.你的笔记本键盘存在故障,每当你在上面输入字符 ‘i’ 时,它会反转你所写的字符串。而输入其他字符则可以正常工作。
给你一个下标从 0 开始的字符串 s ,请你用故障键盘依次输入每个字符。
返回最终笔记本屏幕上输出的字符串。
示例 1:
输入:s = “string”
输出:“rtsng”
解释:
输入第 1 个字符后,屏幕上的文本是:“s” 。
输入第 2 个字符后,屏幕上的文本是:“st” 。
输入第 3 个字符后,屏幕上的文本是:“str” 。
因为第 4 个字符是 ‘i’ ,屏幕上的文本被反转,变成 “rts” 。
输入第 5 个字符后,屏幕上的文本是:“rtsn” 。
输入第 6 个字符后,屏幕上的文本是: “rtsng” 。
因此,返回 “rtsng” 。
示例 2:
输入:s = “poiinter”
输出:“ponter”
解释:
输入第 1 个字符后,屏幕上的文本是:“p” 。
输入第 2 个字符后,屏幕上的文本是:“po” 。
因为第 3 个字符是 ‘i’ ,屏幕上的文本被反转,变成 “op” 。
因为第 4 个字符是 ‘i’ ,屏幕上的文本被反转,变成 “po” 。
输入第 5 个字符后,屏幕上的文本是:“pon” 。
输入第 6 个字符后,屏幕上的文本是:“pont” 。
输入第 7 个字符后,屏幕上的文本是:“ponte” 。
输入第 8 个字符后,屏幕上的文本是:“ponter” 。
因此,返回 “ponter” 。

  • 最直观的想法就是直接翻译题意,遍历字符串,遇到 i 就翻转已经遍历的部分,否则加上字符。
  •   public String finalString(String s) {StringBuilder sb = new StringBuilder();for(int i=0;i<s.length();i++){char c = s.charAt(i);if(c == 'i')sb.reverse();else sb.append(c);}return sb.toString();}
    
  • 而如果有大量 i,大量的翻转操作会使得时间复杂度较高,其实当一个字符串被翻转时,就相当于我们逆序读取它,所以当遇到 i 后,我们把 i 之后的字符加到字符串头部即可,比如 string,我们会得到 gnistr,然后逆序输出得到 rtsing。
  • 而如果再遇到一个 i,我们再换回正序读取即可,这时又从尾部拼接字符,比如 abicdief 我们会得到 ab,然后遇到 i 开始从头部拼接得到 dcab,并且最终要逆序读取来输出它即 bacd;但是最后又遇到了 i,此时如果后面没有字符了,我们只需要再换成正序读取它其实就是我们要的结果即 dcab,后面还有字符就继续往尾部添加字符串即可得到 dcabef,最后正序输出它就是最终结果,所以使用双端队列即可,用一个变量记录我们是否要逆序拼接并逆序读取。
  •   public String finalString(String s) {Deque<Character> dq = new LinkedList<>();  // 是否要逆序boolean isReverse = false;for(int i=0;i<s.length();i++){char c = s.charAt(i);if(c == 'i')isReverse=!isReverse;// 逆序就拼接到头部else if(isReverse)dq.offerFirst(c);// 正常是添加到末尾else dq.offerLast(c);}StringBuilder sb = new StringBuilder();for(char c:dq)sb.append(c);if(isReverse)sb.reverse();return sb.toString();}
    
http://www.yayakq.cn/news/838049/

相关文章:

  • 做视频有赚钱的网站有哪些手机网络不稳定
  • 东莞网站设计费用网站建设验收合同模板
  • 企业网站如何推广南京企业建站系统模板
  • 重庆快速网站建设平台wordpress4.9.6中文
  • 多语言建设外贸网站培训网站搭建
  • 网站策划内容seo公司
  • 西安网站公司做网站有用nodejs
  • 西安网站建设技术熊掌号做网站推广的注意事项
  • 备案的网站 能拿来做仿站吗手机软件免费开发公司
  • 这么给网站做关键字江门网站推广技巧方法
  • 做网站每天任务及实训过程如何引流客源最快的方法
  • 免费下载ppt模板网站推荐百度关键词价格怎么查询
  • 网站备案是不是就是空间备案阳江市网站建设
  • 棠下手机网站建设宁波公司招聘
  • 外贸网站建设哪家有名wordpress视频主题下载地址
  • 自己做的网站链接公司百度网站怎么做的
  • 有没有便宜做网站的 我要做个建设工程查询市场价网站
  • 教修图的网站专门做网站关键词排名
  • 陕西响应式网站建设工商管理局注册查询
  • 做网站首页可以用传媒公司吗网站视频存储方案
  • 交友营销型网站网站建设 硬件
  • 帮别人做网站规划wordpress转发可见
  • 做网站静态和动态为什么不建议去外包公司上班
  • 做网站多少钱免费网站模版 优帮云
  • 找券网站怎么做天津网站建设制作方案
  • 凡客建站登陆网站改版完成
  • 软件下载网站怎么做电子商务平台网站推广
  • 网站开发 需求在线制作印章图片
  • 擦边球网站怎么建设外贸网站模板源码
  • 商城网站类建设哪家好苏州企业门户网站