排序算法
s_kangkang_A
后来许多人问我一个人夜晚踟蹰路上的心情,我想起的却不是孤单和路长,而是波澜壮阔的海和天空中闪耀的星光。
展开
-
排序算法——冒泡和选择
最近复习一下排序算法,从简单的开始,陆续写上来 一:冒泡排序 冒泡排序总的平均时间复杂度为,是一种稳定排序算法 import random def BubbleSort(arr): for i in range(0,len(arr)): for j in range(i+1,len(arr)): if arr[i] > arr[j...原创 2019-06-12 21:17:54 · 177 阅读 · 1 评论 -
排序算法——插入,希尔和归并
如有错误,请指出,多谢。 动图来自菜鸟教程,多谢。 一:插入排序 插入排序的基本思想是:每步将一个待排序的记录,按其关键码值的大小插入前面已经排序的文件中适当位置上,直到全部插入完为止 import random def InsertSort(arr): for i in range(1,len(arr)): #获取前一个下标和当前数字 ind...原创 2019-06-12 21:44:24 · 215 阅读 · 0 评论 -
排序算法——堆排序,快速排序
如有错误,欢迎指出,多谢。 动图来自菜鸟教程,多谢。 一:堆排序 堆排序相对来说有些难度,这里给个链接,老师讲的很详细,C语言版的: https://www.bilibili.com/video/av47196993 根结点(亦称为堆顶)的关键字是堆里所有结点关键字中最大者,称为大根堆,又称最大堆(大顶堆) 了解一下堆排序的大概流程: 1,我们给定一个数组,将数据依次放入堆节点...原创 2019-06-12 22:17:46 · 535 阅读 · 3 评论