排序算法
TOWNST
Universe Infinity inc.
展开
-
二叉排序树java实现
1、二叉树二叉排序树:从任意节点开始,节点左侧节点值总比节点右侧值要小。一个详细讲解的博客: https://www.cnblogs.com/bigsai/p/11382172.html二叉查找树:根节点的值大于其左子树中任意一个节点的值,小于其右节点中任意一节点的值,这一规则适用于二叉查找树中的每一个节点。二叉搜索树:每个父节点都有两个子节点(子节点可能为空),左子节点比父节点小,右子节点比父节点大。C++实现: https://www.cnblogs.com/mcomco/p/10184033原创 2020-12-05 11:38:48 · 195 阅读 · 0 评论 -
java代码实现堆排序
0、堆排序的原理可以参考顺序存储二叉树1、代码实现//堆排序的代码实现import java.util.Arrays;public class HeapSort { public static void main(String[] args) { int arr[] = {4,10,6,8,5,9,13,7,21}; headSort(arr); } public static void headSort(int[] arr) { System.out.println("堆排序开始原创 2020-12-04 20:23:32 · 241 阅读 · 0 评论 -
排序算法之基数排序、(java分步调试)
基数排序(radix sort)属于分配式排序。基数排序的实现方法分为两种:MSD和LSD。MSD:最高位优先法(Most Significant Digit First),先比较最高位,最高位分到一个桶中的,再按照第二位进行分桶…,知道分到最后一位,然后再从最小的桶中逐层向上,把元素都拿出来,即完成排序。LSD:最低位优先法(Least Significant Digit First),先比较最低位,也就是个位,进行分桶,分桶过程中分到一个桶中的数据直接追加到桶中即可,无需排序。然后将所有同种的元素按原创 2020-11-16 21:19:39 · 217 阅读 · 0 评论 -
排序算法之希尔排序,分步调试分析原理(java)。
希尔排序希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。最佳情况:T(n) = O(nlog2 n) 最坏情况:T(n) = O(nlog2 n) 平均情况:T(n) =O(nlog2n)代码实现:希尔排序的移位法能够极大的提高运算速度,避免了交换法的大小过度比较。import java.text.SimpleDateFormat;import java.util.Array原创 2020-11-09 22:41:55 · 209 阅读 · 0 评论