Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- # Enter your code here. Read input from STDIN. Print output to STDOUT
- #def helpquicksort(ar):
- #print quicksort(ar)
- #print quicksort(ar[
- def partition(ar,position):
- #ar[0:len(ary)]=ary[0:len(ar)]
- middle=[ar[position]]
- right,left=ar[0:position],ar[position+1:]
- #print ' '.join(map(str,right+middle+left))
- join(right,middle,left)
- quicksort(right)
- join(right,middle,left)
- quicksort(left)
- join(right,middle,left)
- def join(right,middle,left):
- ar= right+middle+left
- def quicksort(ar):
- if len(ar) == 1:
- return ar
- pivot=ar[-1]
- count = -1
- position=0
- for j in range(len(ar)):
- if ar[j] <= pivot:
- temp = ar[j]
- i=0
- while True:
- if i < len(ar):
- if ar[i] >= ar[j] and i != count:
- ar[j]=ar[i]
- ar[i]=temp
- count+=1
- position=i
- #print ar
- break;
- else:
- break;
- i+=1
- #return ar
- #print ar
- partition(ar,position)
- #return ar
- if __name__ == '__main__':
- n = int(sys.stdin.readline())
- ar = list(map(int, sys.stdin.readline().split()))
- quicksort(ar)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement