题解 | #旋转数组#

旋转数组

https://www.nowcoder.com/practice/e19927a8fd5d477794dac67096862042


class Solution:
    def solve(self , n: int, m: int, a: List[int]) -> List[int]:
    
        def func(i, j):
            while i < j:
                a[i], a[j] = a[j], a[i]
                i += 1
                j -= 1
        m = m % n # 避免过多的移动

        func(0, n-1) # 先整体翻转
        func(0, m-1) # 再翻转前m个
        func(m, n-1) # 最后反转剩下的
        return a

全部评论

相关推荐

01-14 16:23
广州商学院 Java
双非后端失败第N人:如果准备好了可以直接投字节,字节是最不看学历的,只要想面,大概率都能给你约面。
双非有机会进大厂吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务