数据结构
瓜牛呱呱
Hope is a good thing
展开
-
排序算法原理及其Java代码(快速排序、冒泡排序、直接插入排序、简单选择排序)
package sort;/** * 排序测试 * @author lwj */public class SortTest { public static void main(String[] args) { int[] arr = {9,8,7,6,5,4,3,2,1,0};// directInsert(arr);// bubble...原创 2018-03-29 18:26:28 · 363 阅读 · 0 评论 -
JDK1.8中TreeMap源码解析——红黑树删除
在看本文之前建议先看一下二叉树的删除过程,这里有一篇文章写得不错,可以看一下1、后继节点在看源码之前,先说说红黑树寻找 待删除节点t 的 后继节点 的过程:如果待删除节点t有右节点,那么后继节点为该节点右子树中最左的节点,也就是右子树中值最小的节点如果待删除节点t无右节点,那么后继节点是向上遍历过程中 第一个向左拐的父节点图解过程如下:注:图片来源该过程对应的TreeMap...原创 2018-09-19 13:10:04 · 789 阅读 · 0 评论 -
Java实现二叉树——增删改查
今天心血来潮,突然想写个二叉树的类,哈哈~功能代码如下:package tree;/** * 傻逼tree * @author lwj * @date 2018/9/20 */public class MyTree<K extends Comparable, V>{ TreeNode root; /** * 插入操作 * @p...原创 2018-09-20 13:02:54 · 1299 阅读 · 0 评论 -
Java实现斐波那契数列(递归、遍历、矩阵)
什么是斐波那契数列其实很简单,可以理解为:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)比如这样一个数列:1、1、2、3、5、8、13、21、34、……有兴趣可以看百度百科下面我们就来实现,给定一个n,求f(n)的值递归解法递归方法其实是对方法定义完美的一对一实现,但是时间复杂度为O(2的n次方)代码如下: /** ...原创 2018-09-27 20:23:24 · 7653 阅读 · 0 评论