python实现排序:Python实现快速排序算法

示例示例Python实现排序的方法有很多,主要有:冒泡排序、快速排序、插入排序、选择排序、归并排序、希尔排序等。冒泡排序

示例示例Python实现排序的方法有很多,主要有:冒泡排序、快速排序、插入排序、选择排序、归并排序、希尔排序等。冒泡排序

Python实现排序的方法有很多,主要有:冒泡排序、快速排序、插入排序、选择排序、归并排序、希尔排序等。

1、冒泡排序

冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

示例代码:

def bubbleSort(arr):

n = len(arr)

# 遍历所有数组元素

for i in range(n):

# Last i elements are already in place

for j in range(0, n-i-1):

# traverse the array from 0 to n-i-1

# Swap if the element found is greater

# than the next element

if arr[j] > arr[j+1] :

arr[j], arr[j+1] = arr[j+1], arr[j]

# 测试数据

arr = [64, 34, 25, 12, 22, 11, 90]

bubbleSort(arr)

print ("排序后的数组:")

for i in range(len(arr)):

print ("%d" %arr[i]),

2、快速排序

快速排序是对冒泡排序的一种改进。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。

示例代码:

def quickSort(arr,low,high):

if low < high:

# pi is partitioning index, arr[p] is now

# at right place

pi = partition(arr,low,high)

# Separately sort elements before

# partition and after partition

quickSort(arr, low, pi-1)

quickSort(arr, pi+1, high)

# 分割函数

def partition(arr,low,high

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(912)
python树形结构:如何使用Python树形结构进行数据结构和算法分析
上一篇
python csv 写入:如何使用Python的CSV模块写入数据
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(27条)