算法
yrx0619
这个作者很懒,什么都没留下…
展开
-
算法训练营(一):快速排序
#/usr/bin/python #coding:utf8 import random import time import copy testlist = [6,1,2,7,9,3,4,5,10,8] testlist = [6,1,2,7,9,3,4,5,10,8,2,11,8,1,13,2,6,1,8,0,4,2,3,7,9] testlist = [] for i in range(...原创 2018-10-19 17:04:23 · 752 阅读 · 0 评论 -
算法训练营(二):堆排序
堆排序过程 建立大顶堆或者小顶堆,大顶堆(一种二叉树型结构,子树节点值都小于父节点的值)。这个过程的要点是:先从最后一个非叶子节点开始构建堆,因为最后一个非叶子节点才有可能需要调整,然后向前查找的节点都有子树,都有可能需要调整。 排序过程。建立好了大顶堆,那么第一个节点,肯定是所有节点中值最大的节点,所以把第一个节点和最后一个节点值互换。那么最大的节点就在最后了。这个时候需要重新调整的节点为第...原创 2018-10-25 11:11:09 · 332 阅读 · 0 评论 -
快速排序VS堆排序
在使用大量随机数据的情况下,测试结果是快速排序比堆排序快很多。 这是为啥呢,下面几篇文章很好的说明了原因。 https://blog.csdn.net/qq_39521554/article/details/79364718?utm_source=blogxgwz0 https://blog.csdn.net/nawuyao/article/details/52729518?utm_source=...原创 2018-10-25 11:46:22 · 172 阅读 · 0 评论