随笔分类 -  数据结构

摘要:转自:https://www.cnblogs.com/llguanli/p/7363657.html二叉树是一种非常重要的数据结构,非常多其他数据结构都是基于二叉树的基础演变而来的。对于二叉树,有深度遍历和广度遍历,深度遍历有前序、中序以及后序三种遍历方法,广度遍... 阅读全文
posted @ 2018-08-06 21:59 wei1 阅读(337) 评论(0) 推荐(0)
摘要:package Sort;import org.junit.Test;import Sort.utils.Swap;/* * 希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序, * 它是简单插入排序经过改进之后的一个更... 阅读全文
posted @ 2018-04-08 15:59 wei1 阅读(102) 评论(0) 推荐(0)
摘要:package Sort;import org.junit.Test;import Sort.utils.Swap;/* * 直接选择排序为不稳定排序 * 直接选择排序的最好时间复杂度和最差时间复杂度都是O(n^2), * 因为即使数组一开始就是正序的,也需要将... 阅读全文
posted @ 2018-04-08 15:58 wei1 阅读(100) 评论(0) 推荐(0)
摘要:package Sort;import org.junit.Test;/* * 插入排序 * 时间复杂度:O(n^2) 由定理:N个互异数的数组的平均逆序数是 N(N-1)/4,可知:基于相邻元素之间的比较和交换的算法的时间复杂度的一个下界为O(N^2) * ... 阅读全文
posted @ 2018-04-08 15:57 wei1 阅读(95) 评论(0) 推荐(0)
摘要:package Sort;import org.junit.Test;import Sort.utils.Swap;/* * 冒泡排序: * 时间复杂度:O(n^2) * 空间复杂度:O(1) */public class BubbleSort { public ... 阅读全文
posted @ 2018-04-08 15:56 wei1 阅读(106) 评论(0) 推荐(0)
摘要:package MaxSubseqSum;public class MaxSubseqSumDemo { // 使用三个嵌套循环计算最大子列和,时间复杂度为 O(n^3) public int getMaxSubseqSum1(int[] a, int n) { i... 阅读全文
posted @ 2018-02-28 16:53 wei1 阅读(132) 评论(0) 推荐(0)