题解 | #数组的partition调整补充问题#

数组的partition调整补充问题

http://www.nowcoder.com/practice/0d65e18ca5784ae68577d9591df23033

n = int(input())
nums = list(map(int, input().split()))
left, i, right = -1, 0, n
while i < right:
    if nums[i] == 1:
        i += 1
        continue
    if nums[i] == 2:
        right -= 1
        nums[i], nums[right] = nums[right], nums[i]
    else:
        left += 1
        nums[i], nums[left] = nums[left], nums[i]
        i += 1
print(*nums)

全部评论

相关推荐

缒梦&独舞:这家公司是这样的,去年给我实习offer了,不过也是面着玩儿的,他周六还要去做公益志愿活动
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务