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

【力扣】541.反转字符串2

问题描述

思路解析

  • 每当字符达到2*k的时候,判断,同时若剩余字符>k,只对前k个进行判断(这是重点)
  • 因为字符串是不可变变量,所以将其转化为字符串数组,最后才将结果重新转变为字符串
    • 字符串->字符数组        s.toCharArray()
    • 字符数组->字符串        new String(arr)
  • 将反转的函数单独写出来,便于观察理解

代码

class Solution {public String reverseStr(String s, int k) {int n=s.length();char[] arr= s.toCharArray();for(int i=0;i<n;i+=2*k){reverse(arr,i,Math.min(i+k,n)-1);}return new String(arr);}public void reverse(char[] arr,int left,int right){while(left<right){char temp=arr[left];arr[left]=arr[right];arr[right]=temp;left++;right--;}}
}

http://www.lryc.cn/news/493927.html

相关文章:

  • 什么是防抖与节流
  • springboot vue 开源 会员收银系统 (12)购物车关联服务人员 订单计算提成
  • FFmpeg 推流给 FreeSWITCH
  • .npmrc文件的用途
  • C++游戏开发入门:如何从零开始实现自己的游戏项目?
  • Redis设计与实现第16章 -- Sentinel 总结1(初始化、主从服务器获取信息、发送信息、接收信息)
  • Windows10+VirtualBox+Ubuntu:安装虚拟机VirtualBox,虚拟机中安装Ubuntu
  • Torchtune在AMD GPU上的使用指南:利用多GPU能力进行LLM微调与扩展
  • C底层 函数栈帧
  • 【模块一】kubernetes容器编排进阶业务容器化案例
  • 可视化建模以及UML期末复习篇----相关软件安装
  • Appflyer记录卸载事件
  • JDK17 AbstractQueuedSynchronizer 二 条件队列
  • 8 设计模式之简单工厂模式
  • 计算机的错误计算(一百六十九)
  • Android 图形系统之三:SurfaceControl
  • Laravel8.5+微信小程序实现京东商城秒杀方案
  • Makefile 入门指南:构建自动化编译流程
  • C#热更原理与HybridCLR
  • 里氏替换原则:Java面向对象设计的基石
  • 恒创科技:服务器操作系统和客户端操作系统之间的区别
  • 做异端中的异端 -- Emacs裸奔之路4: 你不需要IDE
  • Unity3d C# 摄像头检测敌方单位(目标层级)并在画面中标注(含源码)
  • js 16进制加密
  • 性能测试之压测
  • CentOS修改yum.repos.d源,避免“Could not resolve host: mirrorlist.centos.org”错误
  • Python 三目运算实战详解
  • JVM 性能调优 -- CMS 垃圾回收器 GC 日志分析【Full GC】
  • PS的学习
  • 数据集搜集器(百科)008