博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
左旋转字符串
阅读量:5142 次
发布时间:2019-06-13

本文共 908 字,大约阅读时间需要 3 分钟。

题目描述:对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。

思路分析:这个题很简单,只要利用StringBuffer的一些方法就可以实现截取和拼接。

知识点补充:

StringBuffer :   

(1)delete(int  a,int  b)有两个参数,使用时删除索引从a开始(包含a)到b(不包含b)的所有字符;

(2) Java中append方法的作用是在一个StringBuffer对象后面追加字符串。
 例如StringBuffer s = new StringBuffer("Hello");s.append("World"); 则s的内容是HelloWorld。

下图是String,StringBuffer和StringBuilder的区别:

 

代码实现:

public class Solution {    public String LeftRotateString(String str,int n) {        if(str.length()==0)            return str;        StringBuffer buffer = new StringBuffer(str);        StringBuffer buffer1 = new StringBuffer(str);        StringBuffer  buffer2 =  new StringBuffer();        buffer.delete(0,n);        buffer1.delete(n,str.length());        buffer2.append(buffer.toString()).append(buffer1.toString());        return buffer2.toString();    }}

 

转载于:https://www.cnblogs.com/Dream-chasingGirl/p/10230768.html

你可能感兴趣的文章
罗马数字与阿拉伯数字转换
查看>>
Linux内核态、用户态简介与IntelCPU特权级别--Ring0-3
查看>>
第23月第24天 git命令 .git-credentials git rm --cached git stash clear
查看>>
java SE :标准输入/输出
查看>>
[ JAVA编程 ] double类型计算精度丢失问题及解决方法
查看>>
好玩的-记最近玩的几个经典ipad ios游戏
查看>>
tmux的简单快捷键
查看>>
[Swift]LeetCode922.按奇偶排序数组 II | Sort Array By Parity II
查看>>
php match_model的简单使用
查看>>
Vue_(组件通讯)子组件向父组件传值
查看>>
移动开发平台-应用之星app制作教程
查看>>
如何在maven工程中加载oracle驱动
查看>>
一句话说清分布式锁,进程锁,线程锁
查看>>
服务器解析请求的基本原理
查看>>
[HDU3683 Gomoku]
查看>>
下一代操作系统与软件
查看>>
DataGridView的行的字体颜色变化
查看>>
[Serializable]的应用--注册码的生成,加密和验证
查看>>
Android-多线程AsyncTask
查看>>
LeetCode【709. 转换成小写字母】
查看>>