排序
loganyang123
这个作者很懒,什么都没留下…
展开
-
堆排序算法(java实现)
一、基本概念 要掌握堆排序,先要了解堆这种数据结构。 堆是一个近似完全二叉树的结构,其任意节点满足性质: Key[i]=Key[2i+1]&&key>=key[2i+2] 即任何一非叶节点的键值不大于或者不小于其左右孩子节点的键值。 大顶堆:满足Key[i]>=Key[2i+1]&&key>=key[2i+2] 小顶堆:满足Key[i] 排序过程: 将初始带排序列构造成原创 2014-07-01 18:15:04 · 571 阅读 · 0 评论 -
归并排序(java实现)
、基本概念 归并排序是将两个有序序列合并成一个有序序列的过程。 详细步骤: 申请空间,使其大小为两个已经排序序列之和,该空间用来存放合并后的序列设定两个指针,最初位置分别为两个已经排序序列的起始位置比较两个指针所指向的元素,选择相对小的元素放入到合并空间,并移动指针到下一位置重复步骤3直到某一序列的指针达到序列尾将另一序列剩下的所有元素直接复制到合并序列尾,一次归并结束 二、算法特点原创 2014-07-01 18:27:48 · 539 阅读 · 0 评论 -
快速排序算法(java实现)
package com.lte; import java.util.Random; public class QSort { /** * 快速排序 * @param a 待排序数组 * @return 排好序的数组 */ public static int[] quickSort(int[] a) {原创 2014-06-20 16:23:48 · 508 阅读 · 0 评论