LeetCode 796. Rotate String
Posted Dylan_Java_NYC
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 796. Rotate String相关的知识,希望对你有一定的参考价值。
原题链接在这里:https://leetcode.com/problems/rotate-string/
题目:
We are given two strings, A
and B
.
A shift on A
consists of taking string A
and moving the leftmost character to the rightmost position. For example, if A = ‘abcde‘
, then it will be ‘bcdea‘
after one shift on A
. Return True
if and only if A
can become B
after some number of shifts on A
.
Example 1: Input: A = ‘abcde‘, B = ‘cdeab‘ Output: true Example 2: Input: A = ‘abcde‘, B = ‘abced‘ Output: false
Note:
A
andB
will have length at most100
.
题解:
Like this rotate question, we could double it by A + A.
And check if B is within A + A.
Time Complexity: O(n). n = A.length().
Space: O(n).
AC Java:
1 class Solution { 2 public boolean rotateString(String A, String B) { 3 if(A == null || B == null || A.length() != B.length()){ 4 return false; 5 } 6 7 return (A + A).indexOf(B) != -1; 8 } 9 }
以上是关于LeetCode 796. Rotate String的主要内容,如果未能解决你的问题,请参考以下文章