![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序
timelapse
这个作者很懒,什么都没留下…
展开
-
堆排
adjust_max_heap:功能:算法核心、调整3元堆结构操作:每次比较第i个元素的子节点与i的大小关系,若i不是最大则调整i与最大元素,并在调整的位置(假设为j)继续该比较。直到不需要调整为止。build_max_heap:功能:建立初始堆 操作:从最后一个非叶子节点开始,从后往前调用adjust_max_heap。 heap_sort:功能:利用大根堆实现排序操作:每次取出大根堆的根节...原创 2018-03-29 14:56:13 · 119 阅读 · 0 评论 -
快排
快排:找一个pivot,每次以pivot为标准将小的元素放到左边,大的元素放到右边。递归地在左边和右边进行上述操作。直到所有元素有序。public class quickSort { public static void main(String[] args) { int []L={4,5,6,3,7,8}; quick_sort(L,0,L.length-1); for(int i...原创 2018-03-29 15:02:44 · 408 阅读 · 0 评论 -
归排
归并排序:需要借助一个辅助数组divide: 功能:递归主程序操作:递归将数组分成两半,最底层为1元有序。然后调用merge进行归并。Merge:功能:将两个有序数组归为一个。操作:创建两个指针,从两个数组的头开始比较,将有序结果放入辅助数组temp。排序结束后将temp的元素复制到原数组L。public class MergeSort { public static void Merge(i...原创 2018-03-29 15:14:46 · 279 阅读 · 0 评论