Algorithm: quick sort implemented in python 算法导论 快速排序
2015-02-26 14:18
411 查看
import random def partition(A, lo, hi): pivot_index = random.randint(lo, hi) pivot = A[pivot_index] A[pivot_index], A[hi] = A[hi], A[pivot_index] store_index = lo for i in range(lo, hi): if A[i] < pivot: A[i], A[store_index] = A[store_index], A[i] store_index = store_index + 1 A[store_index], A[hi] = A[hi], A[store_index] return store_index def quicksort(A, lo, hi): if lo < hi: p = partition(A, lo, hi) quicksort(A, lo, p - 1) quicksort(A, p + 1, hi) if __name__ == '__main__': l = [random.randint(1, 113) for i in range(18)] print l quicksort(l, 0, len(l) - 1) print l
相关文章推荐
- algorithm: heap sort in python 算法导论 堆排序
- [算法导论]quicksort algorithm @ Python
- 快速排序与快速选择算法(quick sort and quick select algorithm)
- What does Quick Sort look like in Python?
- quick_sort <算法导论>实现
- [算法导论]merge sort @ Python
- 算法导论:分治法,python实现合并排序MERGE-SORT
- 【数据结构笔记】快速排序(quick_sort)和快速选择(quick_select)--Python2.7
- sort in python
- Algorithm in Python(1)
- python算法实践4-快速排序
- 排序_Quick_Sort(快速排序)
- Quick Sort with Python
- 【算法导论】c++实现的随机化的快速排序
- 快速排序(Quick-Sort)
- 堆(算法导论 part1 foundations, chapter 6 heapsort)
- sorted: list sort in python
- 快速排序(算法导论中的版本)
- python quick sort
- C++ 快速排序实现(算法导论)