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

news/2025/11/26 19:53:52/文章来源:https://www.cnblogs.com/SchwarzShu/p/19274450

代码随想录算法训练营第八天 | 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.mzph.cn/news/977592.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Webpack连载一】入门简介。了解为什么需要Webpack,解决哪些开发中通病 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

31(11.5)

上了离散数学,上了马原

26 10.29

学习打游戏跑步

深入解析:GitLab 钩子 + Jenkins 自动化构建项目

深入解析:GitLab 钩子 + Jenkins 自动化构建项目pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas",…

27.10.30

上了数据结构课程,上了体育课

抖音a_bogus,mstoken全参数爬虫逆向补环境2024-06-15

抖音a_bogus,mstoken全参数爬虫逆向补环境2024-06-15https://www.cnblogs.com/dy9527/p/19057109

深度学习50问

深度学习50问 一、深度学习基础(数学与本质)为什么深度神经网络具有“通用逼近能力”?它的局限性是什么? 深度模型为什么能泛化?泛化从何而来?为什么过参数化反而更容易泛化? 解释一下梯度消失与梯度爆炸的数学…

借助gdb推进修改oracle scn

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年11月红外防潮系统,碳红外防潮取暖系统,别墅红外防潮系统厂家推荐:实力防潮品牌解析,采购无忧之选!

2025年11月:碳红外防潮取暖系统,别墅防潮之优质之选在别墅居住体验中,防潮问题一直是困扰众多业主的难题。尤其是在一些气候湿润的地区,别墅地下室等空间容易出现潮湿发霉的情况,不仅影响房屋的美观和使用寿命,还…

2025年11月天津防潮公司,北京别墅地下室防潮公司,上海防潮公司权威推荐,防潮技术与市场口碑深度解析

2025 年 11 月天津、北京、上海防潮公司权威推荐:防潮技术与市场口碑深度解析在天津、北京、上海这样的城市,防潮需求一直存在,尤其是北京的别墅地下室,防潮工作显得尤为重要。今天要为大家深度解析的是北京碳红外…

50048_基于微信小程序的人事管理系统

1.项目包含 项目源码、项目文档、数据库脚本、软件工具等资料; 带你从零开始部署运行本套系统。 2.项目介绍 使用旧方法对人事管理系统的信息进行系统化管理已经不再让人们信赖了,把现在的网络信息技术运用在人事管理…

树状数组 线段树 笔记

写于 2023.11 树状数组 树状数组是维护 \(n\) 个数的前缀信息的一维数组。 其树型结构如下这样的结构有着写法简单,常数小的特点。 其模板代码如下: inline int lowbit(const int &x){//最后一个 1 对应的值 ret…

二分答案 序列划分

1.函数的返回和可行区应该是一样的 2.可行区选择与题目所求相同 右侧:最小化答案(如本题:寻找数字之和最大的段落最小的值) 左侧:最大化答案 #include <bits/stdc++.h> using namespace std; int n,m; vect…

Ai元人文:谦卑的舞台搭建者——岐金兰与她的未完成之歌

Ai元人文:谦卑的舞台搭建者——岐金兰与她的未完成之歌 在众声喧哗、人人争当先知的时代,我们遇见了一位独特的思考者——岐金兰。她自称为“全领域非专业人士”,却为智能文明的价值困境提出了一个名为“AI元人文”…

2025年下半年UVLED面光源、UVLED线光源、UV固化箱、UV解胶机、UV固化炉厂家Top 5推荐指南:选购必看榜单

摘要 2025年下半年,UV固化炉行业在工业4.0和绿色制造趋势下持续发展,广泛应用于电子封装、印刷包装等领域。本文基于市场调研和用户反馈,推荐五家UV固化炉品牌,排名不分先后,旨在为读者提供参考。表单内容仅供参考…

2025年江苏宣传片、网站建设、AI GEO、外贸站、小程序商城公司综合评测与精选服务商推荐

摘要 随着人工智能与地理空间信息技术的深度融合,2025年下半年AIGEO行业迎来快速发展期。本文基于市场调研和用户反馈,为您推荐五家值得关注的AIGEO平台服务商(排名不分先后),重点介绍各家的技术优势与服务特色。…

数据破界,价值共生:东软锚定AI时代民生新答卷

东软解决方案论坛 2025 于 11 月 20 日在福州这个数字中国的发源地召开。 这场连续举办二十余年的行业盛会,如同中国软件产业的“时光记录仪”:从早期聚焦软件技术突破,到中期探索数字化转型路径,再到如今锚定“数…

Ansible生产调优与故障排查全攻略 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年下半年UVLED面光源、UVLED线光源、UV固化箱、UV解胶机、UV固化炉厂家综合评测与选购指南

摘要 随着工业4.0智能化转型加速,UVLED面光源行业在2025年下半年迎来技术突破期,高功率、长寿命、节能环保成为市场主流需求。本文基于市场调研数据,为行业用户提供五家优质UVLED面光源品牌参考清单(排名不分先后)…

简单 DP 模型

luogu link 写于 2023.08.20 01 背包 朴素算法 //01背包模型 //给出m个物品及其价值,求在空间为T的背包中可以装的最大价值 #include<bits/stdc++.h> using namespace std; int ans[101][1001];//a[i][q]表示…