777 Swap Adjacent in LR String
1. Question
In a string composed of'L','R', and'X'characters, like"RXXLRXRXL", a move consists of either replacing one occurrence of"XL"with"LX", or replacing one occurrence of"RX"with"XR". Given the starting stringstartand the ending stringend, returnTrueif and only if there exists a sequence of moves to transform one string to the other.
Example:
Input: start = "RXXLRXRXL", end = "XRLXXRRLX"
Output: True
Explanation:
We can transform start to end following these steps:
RXXLRXRXL ->
XRXLRXRXL ->
XRLXRXRXL ->
XRLXXRRXL ->
XRLXXRRLXNote:
1 <= len(start) = len(end) <= 10000.Both start and end will only consist of characters in
{'L', 'R', 'X'}.
2. Implementation
(1) Two Pointers
3. Time & Space Complexity
Two Pointers: 时间复杂度O(n), 空间复杂度O(1)
Last updated
Was this helpful?