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

算法题——字符串

344.反转字符串

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--;}return;}
}

没什么好解释的,定义一个temp保存修改前的值即可

541.反转字符串II

class Solution {private String reverse(String s,int begin,int end){StringBuffer sb = new StringBuffer(s);int l=begin;int r=end-1;while(l<r){char temp = sb.charAt(l);sb.setCharAt(l,sb.charAt(r));sb.setCharAt(r,temp);l++;r--;}s=sb.toString();return s;}public String reverseStr(String s, int k) {int i=0;for(i=0;i+2*k<s.length();i+=2*k){s = reverse(s,i,i+k);}if(i+k>=s.length()){s = reverse(s,i,s.length());}else{s = reverse(s,i,i+k);}return s;}
}

StringBuffer的用法见7.13 Java SE(常用API P118-P126)-CSDN博客

这里循环时每次让i加2k而不是+1,根据情况反转对应位置的字符

http://www.dtcms.com/a/337876.html

相关文章:

  • input 标签的宽度根据内容自动调整
  • 电梯的构造|保养|维修视频全集_电梯安全与故障救援(课程下载)
  • JSX本质是什么
  • AI行业应用深度报告:金融、医疗、教育、制造业落地案例
  • Docker之redis安装
  • linux中的hostpath卷、nfs卷以及静态持久卷的区别
  • 使用websockets中的一些问题和解决方法
  • 数据结构04(Java)-- ( 归并排序及其时间复杂度)
  • gflags框架安装与使用
  • 手机视频怎么提取音频?3步转成MP3,超简单!
  • Vue 中 v-for 的使用及 Vue2 与 Vue3 的区别
  • Vue 3中watch的返回值:解锁监听的隐藏技巧
  • Navicat 无法登录时找回 SQL 文件的方法
  • Tidio实时聊工具
  • Linux上安装PostgreSQL-源码编译安装备份恢复(超详细)
  • 视觉语言导航(4)——强化学习的三种方法 与 优化算法 2.43.4
  • IP白名单、网段白名单
  • Docker小游戏 | 使用Docker部署文字风格冒险网页小游戏
  • 如何选择一个好的软件成分分析工具?
  • 【计算机视觉与深度学习实战】05计算机视觉与深度学习在蚊子检测中的应用综述与假设
  • 【java中springboot引入geotool】
  • apisix负载均衡测试
  • 负载均衡终极指南:从流量分发到云原生架构的核心解析
  • Spring学习笔记:@Async Spring异步任务的深入学习与使用
  • 基于CentOS 7.6搭建GitLab服务器【玩转华为云】
  • TVS二极管选型指南
  • 构建高效智能语音代理:技术架构、实现细节与API服务推荐
  • 5G + AI + 云:电信技术重塑游戏生态与未来体验
  • Java基础的128陷阱
  • BAS16XV2T1G ON安森美半导体 高速开关二极管 电子元器件IC