初学Python:快速排序-Quicksort

# /usr/bin/python
# -*- coding:utf-8 -*-

Sample = [72, 6, 57, 88, 120, 60, 42, 83, 73, 48, 85, 100, 201, 119]
L = len(Sample) - 1
B = 0

def Quicksort(sample, b, r):

    if b >= r:
        return
    
    i = b
    j = r
    key = sample[b]

    while i < j:
        while (i < j) & (sample[j] >= key):
            j -= 1
        if i < j:
            sample[i] = sample[j]
            i += 1
        while (i < j) & (sample[i] < key):
            i += 1
        if i < j:
            sample[j] = sample[i]
            j -= 1
    #i == j
    sample[i] = key
    Quicksort(sample, 0, i - 1)
    Quicksort(sample, i + 1, r)

Quicksort(Sample, B, L)

print (Sample)
发布了37 篇原创文章 · 获赞 2 · 访问量 7618

猜你喜欢

转载自blog.csdn.net/bingozb/article/details/99686767