题目

字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串”abcdefg”和数字2,该函数将返回左旋转两位得到的结果”cdefgab”

示例

  1. 输入: s = "abcdefg", k = 2
  2. 输出: "cdefgab"

解析

Method Me

  1. var leftRotate = function(str, num) {
  2. num = num || 0
  3. if (!str || num > str.length) return str
  4. return str.substring(num) + str.substring(0, num)
  5. }

Method 1 - 转数组分割合并

  1. var reverseLeftWords = function(s, n) {
  2. let arr = s.split('');
  3. let a = arr.splice(0, n)
  4. arr.push(...a)
  5. return arr.join('')
  6. };

Method 2 -字符串方法

  1. var reverseLeftWords = function(s, n) {
  2. return s.substring(n) + s.substring(0,n)
  3. };
  4. var reverseLeftWords = function(s, n) {
  5. return s.slice(n) + s.slice(0, n);
  6. };