力扣:541. 反转字符串 II

541. 反转字符串 II

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

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

示例 1:

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

示例 2:

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

提示:

  • 1 <= s.length <= 104
  • s 仅由小写英文组成
  • 1 <= k <= 104
class Solution {public String reverseStr(String s, int k) {char[] arr = s.toCharArray();for(int i = 0;i < arr.length;i += 2*k){//if(i+k<=arr.length){//字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样reverse(arr,i,i+k-1);continue;}reverse(arr,i,arr.length-1);//剩余字符全部反转}return new String(arr);}public void reverse(char[] arr,int i,int j){for(;i<j;i++,j--){char temp = arr[i];arr[i] = arr[j];arr[j] = temp;}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/843142.shtml

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

相关文章

数据恢复:手机数据恢复,盘点7个有效手机恢复方法

你知道吗&#xff0c;超过 70% 的智能手机用户都曾有过数据丢失的经历&#xff1f;如果你曾经丢失过手机中的重要文件&#xff0c;别担心&#xff0c;本文有解决办法。在本文中&#xff0c;我们将告诉你如何使用简单的步骤恢复手机中丢失的数据。无论你是不小心删除了文件还是手…

go使用letteravatar生成圆形透明头像图标

官网地址&#xff1a;GitHub - disintegration/letteravatar: Letter avatar generation for Go 我对其中函数改了一下&#xff0c;支持多个字符&#xff0c;效果如下&#xff1a; func TestCreateAvatar(t *testing.T) {GenerateAvatar("Bird Fish", 0, "Bird…

哈工大机器人竞技队成立22年来4次获国际冠军

另获得中国冠/亚/季军13次、国家级科技奖励60余次、省级科技竞赛奖励50余次、多次获得“最佳技术奖”。早在2009年就力克群雄获得唯一一张亚太大学生机器人大赛的入场卷&#xff0c;代表中国在东京5场全胜获得冠军。 2013届队员王永锟填报高考志愿时&#xff0c;恰巧看到哈工大…

Mac m1安装AWVS

目录 原因 安装 下载镜像 进入终端 启动AWVS 登陆 原因 由于 m1 为 arm 芯片,兼容性问题无法独立安装x86的AWVS,所以使用docker安装较为方便使用。

字符串补位

字符串补位 StringUtilsStrUtilString.format() StringUtils 字符串长度小于设定长度&#xff0c;则会补零&#xff0c;直至达到设定长度字符串长度等于或大于设定长度&#xff0c;则不进行任何操作&#xff0c;保持原字符串不变 import org.apache.commons.lang3.StringUtil…

JavaScript 全屏方案(分享)

文章目录 基本实现特殊情况 基本实现 基本情况是属于只是鼠标点击全屏按钮 document.exitFullscreen()&#xff0c;退出全屏Document.requestFullscreen()&#xff0c;开启全屏document.fullscreenElement&#xff0c;返回当前全屏元素 <template><div><el-b…

stm32 FLYMCU串口刷机:程序文件不是0x8000000和0x20000000区域的”解决办法。

你想使用串口刷机&#xff0c;用FLYMCU &#xff0c; 刷入的bin 文件是不带地址的&#xff0c;得刷入HEX文件 才可以&#xff0c;因为程序并不知道是从0x8000000开始的&#xff0c; 如果必须得刷入bin 那就得用stm32Cube programmer 这个软件 也可以使用ST-LINK&#xff08;S…

Word如何绘制三线表及设置磅值

插入表格&#xff0c; 开始 边框 边框和低温 设置磅值 先全部设置为无边框 上边 1.5 0.5 以上内容未完善&#xff0c;请等待作者更新

【前端面经】JS 中 var、let、const 变量声明方式及其区别?

JS 中三种变量声明方式及其区别 三种变量声明方式及其区别var、let、const 的对比变量的提升 三种变量声明方式及其区别 var、let、const 的对比 特性varletconst函数作用域√&#xff08;变量在函数中声明时&#xff09;not onlynot only全局作用域√&#xff08;变量在函数…

qmt量化交易策略小白学习笔记第7期【qmt策略之股票快照指标】

qmt策略之股票快照指标 qmt更加详细的教程方法&#xff0c;会持续慢慢梳理。 也可找寻博主的历史文章&#xff0c;搜索关键词查看解决方案 &#xff01; 感谢关注&#xff0c;需免费开通量化回测与咨询实盘权限&#xff0c;可以和博主联系&#xff01; 股票快照指标 提供标…

窄通道、非液压、超续航、更安全,地牛AGV小车诠释高效物流!

agv 在智能时代&#xff0c;替代简单、机械、重复以及重体力工作的智能机器设备成为未来发展的趋势。这种趋势不仅可以提高工作效率和质量&#xff0c;还可以解放人力资源&#xff0c;使其更好地应用于创造性和高级智能任务上。 这不&#xff0c;现在有越来越多的工厂开始使用…

移动云服务器选购指南(图文教程详解)

目录 一、前言 二、基本概念 2.1 定义 2.2 部署形式 2.3 用处 三、主流平台 四、主流产品推荐 4.1 云电脑 4.2 云主机ECS 4.3 弹性公网 IP 五、选购指南 5.1 明确场景 5.2 明确需求 5.3 明确身份 新用户 老用户 5.4 明确时间 5.5 明确教程 六、总结 一、前言…

react 保持组件纯粹

部分 JavaScript 函数是 纯粹 的&#xff0c;这类函数通常被称为纯函数。纯函数仅执行计算操作&#xff0c;不做其他操作。你可以通过将组件按纯函数严格编写&#xff0c;以避免一些随着代码库的增长而出现的、令人困扰的 bug 以及不可预测的行为。但为了获得这些好处&#xff…

WMS仓库管理系统是怎么操作的?WMS操作流程详解

WMS 是仓库管理系统(Warehouse Management System) 的缩写。通过标准化的来料管理、拣配管理、仓库管理&#xff0c;打造实时化、透明化、可视化的仓储管理体系。一款合格的wms系统具有以下优势 提供实时可视性和自动化仓储流程&#xff0c;帮助企业更好地应对复杂的供应链网络…

Java多线程基础知识(超详细)

Java多线程基础知识 什么是多线程 在Java中&#xff0c;多线程&#xff08;Multithreading&#xff09;是并发编程的一种形式&#xff0c;它允许在一个程序中同时运行多个线程。每个线程都是程序的一个独立执行流&#xff0c;拥有自己的堆栈和程序计数器&#xff0c;但共享程…

【MySQL精通之路】安全(2)-密码安全

密码出现在MySQL中的多个上下文中。 以下部分提供了一些指导原则&#xff0c;使最终用户和管理员能够确保这些密码的安全并避免暴露这些密码。 此外&#xff0c;validate_password插件可用于强制执行可接受密码的策略。 请参阅“密码验证组件”。 1.密码安全的最终用户指南 …

打造高质感的电子画册,这篇文章告诉你

​在数字化时代&#xff0c;电子画册作为一种全新的视觉传达方式&#xff0c;正逐渐成为各行各业展示形象、传播信息的重要工具。相较于传统的纸质画册&#xff0c;电子画册具有更高的质感、更好的互动性以及更低的制作成本&#xff0c;使得它愈发受到众多企业的青睐。那样怎么…

整理好了!2024年最常见 20 道 Rocket MQ面试题(一)

一、RocketMQ是什么&#xff1f; RocketMQ是一个开源的分布式消息中间件&#xff0c;它最初由阿里巴巴集团开发&#xff0c;并在2012年开源。后来&#xff0c;RocketMQ被捐赠给了Apache软件基金会&#xff0c;并在2017年成为了Apache的顶级项目。以下是RocketMQ的几个关键特点…

linux学习(六)

1.网络管理 (1)查看 ifconfig: root用户可以查看网卡状态, 普通用户: /sbin/ifconfig(需要加上命令的完整路径) (2)修改网络配置 通过命令修改网络配置 设置网卡的ip地址;禁用网卡和启用网卡了。 添加网关: (3)网络故障查询 ①ping 检测当前主机和目标主机是…

单向链表的简单综合应用

通过链表实现赋值&#xff0c;插入&#xff0c;删除&#xff0c;输出的功能&#xff0c;没有多余拉扯&#xff0c;不提供注释&#xff0c;希望大家体会链表之美&#xff1a; 头部 #include<iostream> #include<stdlib.h> using namespace std;typedef struct nod…