第二個字串是否是第一個字串的旋轉版本 JavaScript


我們需要編寫一個 JavaScript 函式,該函式接收兩個字串,例如 str1 和 str2。我們需要確定第二個字串是否是第一個字串的旋轉版本。

例如− 如果輸入字串為−

const str1 = 'abcde';
const str2 = 'cdeab';

那麼輸出應該是 true,因為 str2 實際上是透過將 str1 中的“ab”移動到字串末尾而生成的。

示例

const str1 = 'abcde';
const str2 = 'cdeab';
const isRotated = (str1, str2) => {
   if(str1.length !== str2.length){
      return false
   };
   if( (str1.length || str2.length) === 0){
       return true
   };
   for(let i = 0; i < str1.length; i++){
      const reversed = str1.slice(i).concat(str1.slice(0, i));
      if(reversed === str2){
         return true
      };
   }
   return false;
};
console.log(isRotated(str1, str2));

輸出

而控制檯中的輸出將為−

true

更新於:21-11-2020

117 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.