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

Day7 代码随想录

一、反转字符串 344

编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。

不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。

示例 1:

输入:s = ["h","e","l","l","o"] 输出:["o","l","l","e","h"]

示例 2:

输入:s = ["H","a","n","n","a","h"] 输出:["h","a","n","n","a","H"]

思路: 双指针

代码

class Solution { public: void reverseString(vector<char>& s) { int left = 0; int right = s.size() - 1; for (int i = 0; i < s.size() / 2; i++){ swap(s[left], s[right]); left++; right--; } } ​ };

二、反转字符串Ⅱ -541

给定一个字符串s和一个整数k,从字符串开头算起,每计数至2k个字符,就反转这2k字符中的前k个字符。

  • 如果剩余字符少于k个,则将剩余字符全部反转。

  • 如果剩余字符小于2k但大于或等于k个,则反转前k个字符,其余字符保持原样。

示例 1:

输入:s = "abcdefg", k = 2 输出:"bacdfeg"

示例 2:

输入:s = "abcd", k = 2 输出:"bacd"

思路

其实在遍历字符串的过程中,只要让 i += (2 * k),i 每次移动 2 * k 就可以了,然后判断是否需要有反转的区间。

因为要找的也就是每2 * k 区间的起点,这样写,程序会高效很多。

class Solution { public: string reverseStr(string s, int k) { for (int i = 0; i < s.size(); i += (2 * k)) { // 1. 每隔 2k 个字符的前 k 个字符进行反转 // 2. 剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符 if (i + k <= s.size()) { reverse(s.begin() + i, s.begin() + i + k ); } else { // 3. 剩余字符少于 k 个,则将剩余字符全部反转。 reverse(s.begin() + i, s.end()); } } return s; } };
http://www.jsqmd.com/news/534870/

相关文章:

  • VideoAgentTrek-ScreenFilter一键部署:无需conda/pip,Web界面直连GPU服务
  • MAX77650 Arduino库详解:嵌入式电源管理实战指南
  • PyTorch-2.x-Universal-Dev-v1.0镜像实测:开箱即用环境问题排查
  • Qwen-Image-Layered结合ComfyUI:可视化工作流实现批量图片分层
  • CMake模块系统深度解析:FindHELLO.cmake自定义模块编写指南
  • AnyBar状态栏监控:如何用彩色圆点打造个人运维中心
  • DanKoe 视频笔记:掌控人生:如何获得你想要的生活
  • 3大突破点:如何用开源大模型让中医药AI走进基层医疗
  • 深度解析Docling文档处理框架:如何实现多格式AI-ready文档转换
  • OpenEuler(一):目录及文件操作
  • 从零开始:在OpenWrt上配置和使用dig命令进行高级DNS查询
  • OFA-Image-Caption赋能.NET应用:开发智能图片管理软件
  • 单变量/多变量时序预测的‘TCN-LSTM‘模型源程序(含BiLSTM/GRU替换选项)
  • 基于萤火虫优化算法优化径向基函数神经网络(FA-RBF)的时间序列预测 FA-RBF时间序列 ...
  • 洛谷 P15938 [TOPC 2021] JavaScript 题解
  • MiniExcel快速上手:10个实用示例教你导入导出Excel
  • 一些trick
  • 5分钟掌握Blender资源宝库:从新手到高手的完整指南
  • S2-Pro模型提示词(Prompt)工程高级教程
  • 2026年3月张家口阳原县模板木方厂家最新推荐:建筑工程模板木方、建筑施工模板木方、清水模板木方厂家选择指南 - 海棠依旧大
  • IEEE论文必备:LaTeX伪代码排版全攻略(附algorithmic与algorithm2e对比)
  • 别再花钱买NAS了!用你闲置的Windows电脑,5分钟自建WebDAV私有云盘(附外网访问教程)
  • AI审核守护生命设备安全:IACheck成为呼吸机消毒效果检测报告的智能审核专家
  • ETS2游戏数据可视化:革新卡车模拟2远程监控体验
  • 如何轻松抢到演唱会门票:大麦网Python自动化抢票脚本完整指南 [特殊字符]
  • 2026研究生必备|10款主流文献阅读工具深度测评:从入门到精通的选择指南
  • 论文aigc检测率多少算正常?超标后怎么快速降AI率达标? - 我要发一区
  • 从云端到本地:Open Notebook实战指南,解锁16种AI模型的私有化部署
  • 终极CodePilot代码搜索服务完整指南:从安装到精通使用技巧 [特殊字符]
  • 医学图像分割新思路:拆解MT-UNet中的局部-全局高斯注意力与外部注意力机制