六种常见排序算法(Python语言实现)
文章目录 排序算法总结 常见算法时间复杂度比较 冒泡排序 简介与工作原理: 代码实现 选择排序 插入排序 快速排序 希尔排序 归并排序 排序算法总结 常见算法时间复杂度比较 冒泡排序 简介与工作原理: 简介:是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 从第一个元素开始,与相邻的元素进行比较,如果比较结果是升序的,就把这两个元素进行互换 从第一对到最后一对进行比较,对每一对相邻元素重复进行此操作,做完这个操作后,最后一个元素是最大的元素 针对所以的元素再重复以上步骤 持续对越来越少的元素进行以上的步骤,直到没有任何一对数据需要比较为止。 代码实现 #!/usr/local/bin/python 2 # 冒泡排序 3 def bubb_sort ( list ) : 4 L = len ( list ) 5 for j in range ( L , 0 , - 1 ) : 6 for i in range ( j - 1 ) : 7 if list [ i ] > list [ i + 1 ] : 8 list [ i ] , list [ i + 1 ] = list [ i + 1