LeetCode 777. 在LR字符串中交换相邻字符(双指针)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 777. 在LR字符串中交换相邻字符(双指针)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 題目
在一個由 ‘L’ , ‘R’ 和 ‘X’ 三個字符組成的字符串(例如"RXXLRXRXL")中進行移動操作。一次移動操作指用一個"LX"替換一個"XL",或者用一個"XR"替換一個"RX"。現給定起始字符串start和結束字符串end,請編寫代碼,當且僅當存在一系列移動操作使得start可以轉換成end時, 返回True。
示例 : 輸入: start = "RXXLRXRXL", end = "XRLXXRRLX" 輸出: True 解釋: 我們可以通過以下幾步將start轉換成end: RXXLRXRXL -> XRXLRXRXL -> XRLXRXRXL -> XRLXXRRXL -> XRLXXRRLX 注意: 1 <= len(start) = len(end) <= 10000。 start和end中的字符串僅限于'L', 'R'和'X'。來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/swap-adjacent-in-lr-string
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
- 題目意思就是:L只能向左移動,R只能向右移動
- 且 LR不能改變左右相對位置
- start中 L的下標 XL,R的下標 XR
- end中的L下標應小于等于 XL, end中的 R下標都應大于等于 XR
總結
以上是生活随笔為你收集整理的LeetCode 777. 在LR字符串中交换相邻字符(双指针)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 648. 单词替换(T
- 下一篇: LeetCode 378. 有序矩阵中第