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

26-算法打卡-字符串-右旋字符串-第二十六天

1 题目说明

字符串的右旋转操作是把字符串尾部的若干个字符转移到字符串的前面。给定一个字符串 s 和一个正整数 k,请编写一个函数,将字符串中的后面 k 个字符移到字符串的前面,实现字符串的右旋转操作。

例如,对于输入字符串 "abcdefg" 和整数 2,函数应该将其转换为 "fgabcde"。

输入:输入共包含两行,第一行为一个正整数 k,代表右旋转的位数。第二行为字符串 s,代表需要旋转的字符串。

输出:输出共一行,为进行了右旋转操作后的字符串。


2 解题思路

1、将字符串整体反转:abcdefg ==>>  gfedcba
2、前k个元素反转,剩下的数反转    gfedcba ==>> fdabcde


3 代码编写

public String reverseK(String s, int k) {char[] sArray = s.toCharArray();// 整体反转reverseK(sArray, 0, sArray.length-1);// 前k个元素反转reverseK(sArray, 0, k-1);// 后面的所有元素反转reverseK(sArray, k, sArray.length-1);return String.valueOf(sArray);}public void reverseK(char[] sArray, int left, int right) {while (left < right) {char temp = sArray[left];sArray[left] = sArray[right];sArray[right] = temp;left++;right--;}}

相关文章:

  • 基于Quill的文档编辑器开发日志(上)——前端核心功能实现与本地存储管理
  • 【Unity笔记】Unity音效管理:ScriptableObject配置 + 音量控制 + 编辑器预览播放自动化实现
  • Science Robotics 新型层级化架构实现250个机器人智能组队,“单点故障”系统仍可稳定运行
  • 主流开源 LLM 应用开发平台详解
  • 店匠科技摘得 36 氪“2025 AI Partner 创新大奖”
  • 《楞严经》中“魔”与魔王波旬的关联性分析
  • 数据分析:用Excel做周报
  • uniapp中使用<cover-view>标签
  • 国内ip地址怎么改?详细教程
  • Elasticsearch内核探秘:从Shard分配到网络通信的深度实践指南
  • Zookeeper是什么?基于zookeeper实现分布式锁
  • UML设计系列(9):开发过程中如何应用UML
  • MATLAB 下载安装教程
  • C# 文件读取
  • Elasticsearch 堆内存使用情况和 JVM 垃圾回收
  • 【初级】前端开发工程师面试100题(一)
  • DB-Day11笔记-函数和存储过程面试题讲解
  • VMware Fusion Pro 13 Mac版虚拟机 安装Win11系统教程
  • 《巧用DeepSeek快速搞定数据分析》书籍分享
  • 《k230-AI_DEMO》车牌识别
  • 百年前的亚裔艺术家与巴黎
  • 特朗普:泽连斯基的言论对和平谈判非常有害
  • 威廉·透纳诞辰250周年|他是现代艺术之父
  • 中国空间站已在轨实施了200余项科学与应用项目
  • 世界读书日丨阅读与行走,都是理解世界的方式
  • 禾赛:车载激光雷达走向标配,核心能力可在机器人领域复用