随笔分类 -  java-数据结构

java-排序
摘要:一,内部排序 有交换过程的都不稳定,选择--待排序区选一个最值的出来-交换(不稳定)--不受初始序列顺序影响 ①简单选择,②堆排序交换--不停交换,使最值浮现。(不稳定) ③冒泡,④快排插入--取一个待排序,在已排序序列不停比较,找到位置插入 ⑥直接插入(稳定),⑦折半插入(稳定),⑧希尔排序(不稳 阅读全文
posted @ 2020-09-28 16:28 呵呵哒9876 阅读(160) 评论(0) 推荐(0)
java-实现哈希表 跳表
摘要:一,哈希表,将关键字与储存位置通过某种函数关联起来,拿到要查找的对象后,通过关键字得出对象的储存位置, 使得查询时间复杂度为O(1),而不用遍历集合去比较,哈希函数是函数, 存在输入不同key得到相同解的情况,即发生哈希碰撞。理论上只要储存空间有限,必定会发生哈希碰撞。 哈希表的关键:设计哈希函数, 阅读全文
posted @ 2020-09-28 00:36 呵呵哒9876 阅读(272) 评论(0) 推荐(0)
java-实现B+树
摘要:参考:https://www.cnblogs.com/jing99/p/11741685.html https://www.cnblogs.com/ll9507/p/11616417.html B+树 一种多路平衡查找树 ①与二叉树,红黑树等相比,最大的不同就是一个节点可以有多个子节点(有子节点列表 阅读全文
posted @ 2020-09-26 19:34 呵呵哒9876 阅读(1237) 评论(0) 推荐(0)
java-实现红黑树
摘要:实现平衡二叉树后接着实现红黑树,红黑树接近平衡的二叉树,插入,删除函数跟平衡二叉树一样,只是平衡函数不同,平衡二叉树严格按照子树高度差,使最长路径-最短路径=0/1; 1,而红黑树的特性: (1) 每个节点或者是黑色,或者是红色。 (2) 根节点是黑色。 (3) 每个叶子节点是黑色。 [注意:这里叶 阅读全文
posted @ 2020-09-24 17:38 呵呵哒9876 阅读(681) 评论(0) 推荐(0)
java-实现平衡二叉树
摘要:1,前面一条博客实现了,二叉查找树,但是当二叉树退化成链表后,二叉查找树的时间复杂度优越性就没有了, 再网上学习了一下,啊啊啊,调了一夜bug,5555 主要参考博主的博客:https://www.cnblogs.com/qm-article/p/9349681.html 实现平衡二叉树是基于,二叉 阅读全文
posted @ 2020-09-21 16:27 呵呵哒9876 阅读(463) 评论(0) 推荐(0)
java-实现 哈夫曼树 二叉查找树
摘要:二叉树的应用 1,哈夫曼树和哈夫曼编码 //转载至:https://blog.csdn.net/jdhanhua/article/details/6621026 1.1首先是Node类,因为每次取出两个最小值都行从新排序,将Node实现 Comparable接口用于排序 1 public class 阅读全文
posted @ 2020-09-20 12:39 呵呵哒9876 阅读(242) 评论(0) 推荐(0)
java-二叉树遍历
摘要:1,完全二叉树-建树,先建简单的树,用简单的树学习各种遍历 2,根据先中序建树,根据中后序建树 1 //先简单建树-按完全二叉树节点插入顺序建树,即层序遍历。 2 3 /**二叉树:每个节点最多两个孩子节点(计划生育-最多生二胎); 4 * 完全二叉树(遏制人口老龄化:必须生两胎,否则不准后代传宗接 阅读全文
posted @ 2020-09-18 20:05 呵呵哒9876 阅读(210) 评论(0) 推荐(0)
java-栈和队列-算法
摘要:1,栈的实现 1.1 栈-链表实现 //定义Node类 public class Node { public String data=""; Node next=null; public Node(){ data="THE-HEAD"; } public Node(String data){ thi 阅读全文
posted @ 2020-09-17 22:37 呵呵哒9876 阅读(297) 评论(0) 推荐(0)
java-单链表
摘要:Node 类: public class Node { public int data; public Node next=null; public Node(){ data=2147483647; next=null; } //构造函数 public Node(int data){ this.da 阅读全文
posted @ 2020-09-16 19:04 呵呵哒9876 阅读(186) 评论(1) 推荐(0)