![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序算法
whiteQ777
这个作者很懒,什么都没留下…
展开
-
排序算法一 插入排序
插入排序是对少量元素进行排序的有效算法。 插入排序属于原地排序(sorted in place),即在排序时,仅仅需要常数个数存储在原数组以外。 代码如下: #INSERTION-sort(A) A = [5,2,4,6,1,3] for j in range(1,len(A)): key = A[j] i = j - 1 while i >= 0 and A[i]...原创 2018-12-26 19:38:30 · 151 阅读 · 0 评论 -
排序算法二 堆排序
堆排序的时间复杂度为:O(nlgn) 堆 堆数据对象是一种数组对象,它可以看作一颗完全二叉树。 对于一个堆数组A,有两个属性: 1.length[A]:表示数组中元素的个数 2.heap-size[A]:表示数组A中存放的堆元素的个数 树的根为A[1],给定某个结点的下标为i,则 父节点:parent[i] : i/2向上取整 左儿子:left[i]:2i 右儿子:right[i]:2i+1 堆...原创 2018-12-26 21:19:56 · 182 阅读 · 0 评论