数据结构与算法
无
闪电蛙
生命不息,奋斗不止!
个人博客:http://www.cloverhk.top,欢迎各位多多指教。
展开
-
Java实现单向链表的CRUD
Java实现单向链表就必须要先有一个节点,该节点用来存放数据和下一个节点的地址! 但是前提是必须得有一个头节点,头节点里不放任何的数据的,只是用来 用来存放这个链表中的头位置! 所以实现的整个效果,大家先看一下图! 现在我们先来实现这个节点: class Node{ public String name; public Node next; public void setName(String name) { this.name = name; }.原创 2020-08-08 14:38:18 · 268 阅读 · 1 评论 -
多路查找树总结(2-3树、2-3-4树、B树、B+树、B*树)
二叉树的问题分析: 二叉树的操作效率较高,但存在着很大的问题 存在的问题: 二叉树需要加载到内存时,如果二叉树的节点少,并不会出现什么问题,但是如果二叉树的节点很多,就会出现 很大的问题 问题一:在构建二叉树时,需要多次进行I/O操作(海量数据存在数据库或文件中),节点海量,构造二叉树时,速度有影响。 问题二:节点海量,也会造成二叉树的高度很大,会降低操作速度 解决问题的方案为:多叉树 1.在二叉树中,每个节点有数据项,最多有两个子节点,如果允许每个节点可以有更多的数据项和更多的子节点,就是多叉树(m原创 2020-08-05 21:14:11 · 507 阅读 · 0 评论 -
java实现顺序存储二叉树
存储二叉树时,我们一般都用的是数组,不过在访问的时候是通过数组的下标来模拟访问! 使用数组存放时只能从0开始存储,但是我们可以通过一定的规则对数组进行遍历就可以得到二叉树的的遍历的结果,下面我们先看一个遍历的规则: 顺序存储二叉树的特点:(这里的n指的是元素当前的索引值 ) 1.顺序二叉树通常只考虑完全二叉树 2.第n个元素的左子节点为: 2*n + 1 3.第n个元素的右子节点为: 2 *n + 2 (因为它是右子树所以在左子树的基础上加1) 4.第n个元素的父节点为:(n - 1)/2 下面.原创 2020-07-27 16:08:10 · 382 阅读 · 0 评论