![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序
小胖胖的大宝宝
只写原创的机器学习学习者
展开
-
python堆排序实现
import math import copy #二叉树节点类 class TreeNode: value = None #节点值 depth = None #节点深度 num = None #节点序号 def __init__(self, value): self.value = value #二叉树建立,存储结构为顺序表 def create...原创 2019-10-20 12:13:29 · 79 阅读 · 0 评论 -
快速排序python实现
快速排序和归并排序有点相似,归并排序是先“切分”后排序,而快速排序是先排序后切分。快速排序中,一个待排序的数组右两个指针分别指向收尾,并且指定一个基准数,基准数一般是待排序数组的头元素,通过比较指针所指元素和基准数的值,不断进行交换,当两个指针指向同一元素时,基准数归位。基准数左侧数都小于基准数,右侧都大于基准数。这样就进行了一遍快速排序。然后继续对基准数左侧所有元素和右侧所有元素分别进行递归操作...原创 2019-10-17 17:09:19 · 104 阅读 · 0 评论 -
归并排序python实现
归并排序,使用python实现 归并排序的核心思想就是将数组平均分为两个数组,假设有N个元素,则分为N个数组,每个数组只有一个元素。分组之后进行合并操作,同时合并两个数组,这两个数组可分为“左数组”和“右数组”,分别对应两个指针“左数组指针”和“右数组指针”,这两个指针对应的元素进行比较,比较大小后移动左侧指针或右侧指针,直到左指针或右指针指向数组末端,然后再将剩下的未归并的数组直接放在归并数组的...原创 2019-10-17 15:48:48 · 223 阅读 · 0 评论