AcWing
  • 首页
  • 课程
  • 题库
  • 更多
    • 竞赛
    • 题解
    • 分享
    • 问答
    • 应用
    • 校园
  • 关闭
    历史记录
    清除记录
    猜你想搜
    AcWing热点
  • App
  • 登录/注册

AcWing 785. 快速排序,python看这    原题链接    简单

作者: 作者的头像   锵域 ,  2019-09-10 20:26:58 ,  所有人可见 ,  阅读 1373


3


2

python 看这

import sys
def quicksort(nums, l, r):
    if l < r:
        left,right  = l-1,r+1
        tmpVal = nums[(l+r)//2]
        while left < right:
            while True:
                left += 1
                if nums[left] >= tmpVal:
                    break
            while True:
                right -= 1
                if nums[right] <= tmpVal:
                    break
            if left<right:
                nums[left],nums[right] = nums[right],nums[left]
        quicksort(nums, l, right)
        quicksort(nums, right+1, r)
nums = []
for line in sys.stdin:
    nums.append(list(map(int, line.split())))
num = nums[1]
quicksort(num,0,len(num)-1)
print(" ".join(map(str,num)))

4 评论


用户头像
Ron.W   2020-11-17 07:22         踩      回复

我看别的答案用input() 为什么那些都出现
Traceback (most recent call last):
File “a.py”, line 2, in [HTML_REMOVED]
print(input())
File “[HTML_REMOVED]“, line 1
3 1 2 4 5
^
SyntaxError: invalid syntax

用户头像
twit   2021-05-12 15:58         踩      回复

我刚刚也遇到了这个情况,我猜测是因为‘3 1 2 4 5’是这样输入的,所以你要读取这些数字的话,需要先将他们分割成数组

用户头像
航_0   2021-12-14 00:37         踩      回复

同遇到这个问题,发现python会报错,但是python3却不会!不知道最后楼主有经验分享么,谢谢


用户头像
戈好雨   2019-10-02 13:04         踩      回复

为啥把1做为变量传入函数


App 内打开
你确定删除吗?
1024
x

© 2018-2025 AcWing 版权所有  |  京ICP备2021015969号-2
用户协议  |  隐私政策  |  常见问题  |  联系我们
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标 qq图标
请输入绑定的邮箱地址
请输入注册信息