参考代码:
def quick_sort(q, l, r):
if l>=r:
return
i, j = l-1, r+1
x = q[(l+r)//2]
while i < j:
while True:
i+=1
if q[i]>=x:
break
while True:
j-=1
if q[j]<=x:
break
if i < j:
q[i], q[j] = q[j], q[i]
quick_sort(q, l, j)
quick_sort(q, j+1, r)
if __name__ == "__main__":
n=int(input())
li=list(map(int,input().split()))
l=0
r=n-1
quick_sort(li,l,r)
for i in li:
print(i,end=' ')
0.0分
2 人评分
GC的苦恼 (C语言代码)浏览:618 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:650 |
简单的a+b (C语言代码)浏览:547 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:569 |
A+B for Input-Output Practice (III) (C++代码)浏览:562 |
C语言训练-"水仙花数"问题1 (C语言代码)浏览:756 |
10进制 VS 2进制浏览:1038 |
矩形面积交 (C语言代码)浏览:1796 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:386 |
判定字符位置 (C语言代码)浏览:693 |