美文网首页
左旋字符串

左旋字符串

作者: zhouwaiqiang | 来源:发表于2019-04-08 22:44 被阅读0次

题目描述

汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定它!

实现过程

  • 这个过程相当于一个循环队列,那么我们只需要求得最小的移动后的结果即可,即是需要将传入参数n对字符串长度取余,然后再对字符串进行操作
  • java中String字符串提供了一个substring的操作可以切分字符串,那么这道题直接调用这个方法,然后就对应的两段值切分返回相加即可得到结果
  • 如果是其他字符串理论上应该是循环k的长度前面的字符串不挺的往后加,然后前面的字符串删除也可以得到结果

JAVA源代码

public class Solution {
    public String LeftRotateString(String str,int n) {
        if (str==null || str.length()==0 || n<=0) return str;
        int length = str.length();
        n = n%length;
        if (n==length) return str;
        str = str.substring(n, length) + str.substring(0, n);
        return str;
    }
}

相关文章

  • 剑指offer | 左旋字符串

    左旋字符串 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部 示例输入:helloworld和3输出...

  • 2020-05-25 第一题

    面试题58 - II. 左旋转字符串 难度简单30 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部...

  • LeetCode刷题(一)

    面试题58 - II. 左旋转字符串 题目:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义...

  • LeetCode题解之左旋转字符串

    左旋转字符串 题目描述 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左...

  • 面试题58 - II. 左旋转字符串

    左旋转字符串 题目描述 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左...

  • 【剑指Offer 42】左旋转字符串

    题目:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。 ...

  • 面试题58(2):左旋转字符串

    题目 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比...

  • 左旋转字符串

    题目描述 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能...

  • 剑指 Offer 58 - II. 左旋转字符串

    题目描述 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能...

  • 面试题58_II_左旋转字符串

    题目描述 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能...

网友评论

      本文标题:左旋字符串

      本文链接:https://www.haomeiwen.com/subject/ivbmiqtx.html