
树
文章平均质量分 50
早起之王
才疏学浅,如有指正,非常感谢
展开
-
Java树——树对象的创建
今天给大家带来的是用Java语言实现树结构的基本操作。以及平衡二叉树的相关知识和代码。 平衡二叉树相比于一般树结构的特点是: 1. 任何结点子树的高度差都小于等于 1 2. 是一颗有序树。比根结点大的结点,作为右子节点。比根节点小的,做为左子节点。平衡二叉树的意义就是依靠这种特殊结构,利用二分查找的思想,实现数据的快速查找。 首先是树结构的搭建,即构建树的对象时,这个类中应包含什么,这个类应该怎么写。第一点,一...原创 2021-07-15 10:44:34 · 776 阅读 · 0 评论 -
Java树——平衡二叉树的建立
本文会介绍平衡二叉树的相关知识和代码。 平衡二叉树相比于一般树结构的特点是: 1. 任何结点子树的高度差都小于等于 1 2. 是一颗有序树。比根结点大的结点,作为右子节点。比根节点小的,做为左子节点。平衡二叉树的意义就是依靠这种特殊结构,利用二分查找的思想,实现数据的快速查找。平衡二叉树的一系列操作都建立在树结构的类之上。有关树的定义如下:Java树的定义...原创 2021-07-15 10:48:12 · 185 阅读 · 0 评论 -
树结构——哈弗曼树简述
哈弗曼树是一种编码方式,在数字传输编码压缩中是常用的。 计算机存储数据依靠的是0,1两个二进制的数字符号,所以我们的数据要转化成对应的0,1串。很容易想到ASCII码,每个字符对应的ASCII码都有8个二进制位,实际运用的时候,我们只用到几个字符,不用8位就可以把他们区分开来,所以为了节省这点空间,哈弗曼树出现。 哈夫曼树对空间极其节省,每个字符对应的编码位数不尽相同,甚至根据字符出现的频率,来决定其编码长短。称之为变长编码。他的压缩效率基本是在 50% ...原创 2021-07-15 21:58:35 · 365 阅读 · 0 评论 -
Java树——基本操作
一、遍历1. 先序遍历(DLR) 先序遍历即对一棵二叉树,以 根、左、右 的顺序依次寻找。他的代码实现非常简单。如下:public void preOrder(TreeNode treeNode) { if(treeNode!= null) { System.out.print(treeNode.getValue()+" "); preOrder(treeNode.getLeftTreeNode()); preOrder(treeNode.getRigh...原创 2021-07-15 18:08:39 · 714 阅读 · 0 评论 -
红黑树和B树、B+树简单介绍
一、概念和特点红黑树,用两种颜色标记节点;所有节点只有红黑两种颜色 根节点永远是黑色的 每个叶子节点(null或NIL空节点)是黑色的 从一个节点到其所有子孙节点的路径上都包含一样多的黑色节点 (可确保) 红色节点的孩子是黑色二、生成 首先将红黑树当成一颗二叉查找树,把节点插入,然后对该节点进行着红色操作。着红色时一定不会违反红黑树上述的第四个特性。最后经过旋转和着色操作完善红黑树。三、优点 得益红黑树的五个特性,构建红黑树时的旋转操...原创 2021-07-15 16:37:38 · 9038 阅读 · 0 评论