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

[豪の算法奇妙冒险] 代码随想录算法训练营第八天 | 344-反转字符串、541-反转字符串II、Carl54-替换数字

代码随想录算法训练营第八天 | 344-反转字符串、541-反转字符串II、Carl54-替换数字


LeetCode344 反转字符串

题目链接:https://leetcode.cn/problems/reverse-string/description/

文章讲解:https://programmercarl.com/0344.反转字符串.html

视频讲解:https://www.bilibili.com/video/BV1fV4y17748/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 挺简单的,使用双指针的思路,一头一尾相互交换元素即可完成字符串的倒置

image-20251126173716637

class Solution {public void reverseString(char[] s) {int left = 0;int right = s.length - 1;while(left < right){char temp = s[left];s[left] = s[right];s[right] = temp;left++;right--;}}
}

LeetCode541 反转字符串II

题目链接:https://leetcode.cn/problems/reverse-string-ii/description/

文章讲解:https://programmercarl.com/0541.反转字符串II.html

视频讲解:https://www.bilibili.com/video/BV1dT411j7NN/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 这题需要注意for循环遍历字符串时不是i++,而是i+=2*k

​ 在一轮翻转中,首先先求第一个k的位置,如果 start+k > length,说明余下的不足k个,firstK = length,即将余下的全部进行翻转;如果 start+k <= length,则firstK = start+k,把start到firstK的这些字符进行翻转

​ 然后求2k的位置,如果 start + 2*k > length,说明余下的不足2k个,secondK = length;如果 start + 2*k <= length,则secondK = start + 2*k。后续再进行判断,若firstK < secondK,则把firstK和secondK之间的所有字符加入result,这包含了“正常把k~2k之间的字符放入result”和“剩下的字符够k个但不够2k个,把k个翻转后,剩下的正常放入result”两种情况

image-20251126190503647

class Solution {public String reverseStr(String s, int k) {int length = s.length();StringBuilder result = new StringBuilder(length);for(int start = 0; start < length; start += 2*k){StringBuilder temp = new StringBuilder();int firstK = 0;if(start + k > length){firstK = length;}else{firstK = start + k;}temp.append(s.substring(start, firstK));result.append(temp.reverse());int secondK = 0;if(start + 2*k > length){secondK = length;}else{secondK = start + 2*k;}if(firstK < secondK){result.append(s.substring(firstK, secondK));}}return result.toString();}
}

卡码网54 替换数字

题目链接:https://kamacoder.com/problempage.php?pid=1064

文章讲解:https://programmercarl.com/kamacoder/0054.替换数字.html

​ 第一次解,使用的是StringBuilder

image-20251126193235045

​ 后面了解到后序处理的思想,就再用后序处理的方法重新做了一遍

image-20251126194852706

http://www.rkmt.cn/news/61871.html

相关文章:

  • 31(11.5)
  • 深入解析:GitLab 钩子 + Jenkins 自动化构建项目
  • 27.10.30
  • 抖音a_bogus,mstoken全参数爬虫逆向补环境2024-06-15
  • 深度学习50问
  • 2025年11月天津防潮公司,北京别墅地下室防潮公司,上海防潮公司权威推荐,防潮技术与市场口碑深度解析
  • 树状数组 线段树 笔记
  • 大模型(LLM)基本原理
  • 实训(补)
  • 2025年下半年江苏网架、钢结构、光伏支架钢管、托辊钢管、汽车传动轴钢管厂家推荐指南:专业选择与权威解析
  • 2025年11月压力容器、化工设备、锅炉、换热器、反应釜厂家怎么选:前五推荐指南
  • 2025年下半年冷弯成型前冲孔生产线、C型钢自动抱焊机、钢结构码垛机、H钢冲孔液压设备、光伏支架冲孔机优质供应商推荐指南
  • 2025年下半年压力容器、化工设备、锅炉、换热器、反应釜厂家综合推荐指南:十大优质供应商深度解析
  • 从“人工寻宝”到“秒级解析”:文档信息抽取技术重塑保险保单处理流程
  • Swift相机功能实战:手把手教你实现扫码、拍照、视频录制全流程 - 指南
  • 全息投影仓的AI连接系统的开发代码要怎么写?
  • 2025年江苏储物柜、卧室套装、衣柜衣橱、厨房橱柜工厂、全屋定制源头厂家推荐榜单:十大专业厂家综合评测
  • VUE3基础环境搭建
  • 基于Halcon的相机图像采集系统设计与达成
  • 2025年下半年辣椒种子、色素椒种子、线椒种子、螺丝椒种子、加工型辣椒种子厂家推荐排行榜单:精选五家优质供应商指南
  • Python进阶学习
  • 2025年塑料托盘、塑胶卡板、吹塑托盘、塑料栈板、防渗漏托盘生产厂家选购全指南:品牌推荐与行业洞察
  • 2025年四川成都木瓜蛋白酶泡毛肚技术、毛肚蒸煮机、毛肚自动化设备、毛肚清洗机、毛肚加工设备、毛肚设备工厂综合评估与选购指南
  • 【图像算法 - 31】基于深度学习的太阳能板缺陷检测体系:YOLOv12 + UI界面 + 数据集建立
  • 2025年下半年仓储货架/冷库货架/AGV货架/CTU货架/大连货架厂家推荐榜单:十大专业供应商综合评测
  • 白井黑子
  • 2025年四川PRDP防腐式带立筋缠绕管公司排名
  • OKR 与 KPI
  • Windows后门工具排查_2025/11/26(持续更新)
  • 项目解决方案:轮船AI识别违规行为解决方案 - 教程