![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 74
L.Z.hao.
这个作者很懒,什么都没留下…
展开
-
链表总结-虚拟结点
链表按类型可分为:单链表,双链表和循环链表;单链表中的指针域只能指向节点的下一个节点。双链表:每一个节点有两个指针域,一个指向下一个节点,一个指向上一个节点。循环链表:链表和数组显著的区别是数组的存储方式。数组是在内存中是连续分布的,但是链表在内存中可不是连续分布的。链表是通过指针域的指针链接在内存中各个节点。所以链表中的节点在内存中不是连续分布的 ,而是散乱分布在内存中的某地址上,分配机制取决于操作系统的内存管理。对于链表的设计,可以参考:707设计链表虚拟结点法是链表中常用的一种解原创 2022-07-07 15:16:55 · 1110 阅读 · 0 评论 -
(一)java实现二叉树并实现遍历
树的相关知识可参考:二叉树抽象数据类型(二)二叉树的遍历:1.递归遍历只需要调整输出位置即可;2.非递归遍历非递归遍历需要借助栈,以中序遍历为例;将左边的子树全部取出压入栈中...原创 2022-06-19 19:22:01 · 791 阅读 · 0 评论 -
二叉树的应用---4.B+树
(一)B+树及其查找:B+数可以保持数据的稳定有序,其插入和修改具有较稳定的时间复杂度,在B+树中,对数据的引用指向叶子结点,内部结点的关键字只是充当划分子树的分界值:其定义和B-树相同:树中每个结点最多有m个子树根结点最少有两个子树除了根结点以外的非叶子结点最少有m/2个子树所有叶子结点都出现在同一层其中有n+1个子树的非叶子结点的信息如下图:通常B+树上有两个指针,一个指向根结点,另一个指向关键字最小的叶子结点,如图所示:B+树查找的过程和b-树相似,但查找时,无论非叶子原创 2022-04-16 15:42:27 · 492 阅读 · 0 评论 -
二叉树的应用---3.B-树
(一)B-树的定义:在大规模数据查找中,大量的数据储存在外存磁盘,查找是要从磁盘读取数据,磁盘I/O读写的基本操作单位是块(block)。磁盘上的数据有一个三维地址唯一标识:柱面号,盘面号,块号磁盘的读写要一下三个步骤(1).根据柱面号使磁头移动到所要的柱面上,称为定位(2).根据盘面号来确定盘面上的磁道(3)盘面确定后盘片开始旋转,将指定块号的磁道端记下;数据的查找由三个时间端组成:(1)查找时间(2)等待时间(3)传输时间;I/O时间主要花在查找时间上,当使用二叉树查找时,若要找值为8的原创 2022-04-16 11:38:34 · 412 阅读 · 0 评论 -
二叉树的应用---2.平衡二叉树
(一)平衡二叉树的概念:由于二叉搜索树的时间复杂度最好为O(logn),最差为O(n),因此有了AVL树,即平衡二叉树,其时间复杂度为O(logn),其定义为:1.平衡因子:二叉树中某结点的右子树的高度和左子树的高度差为该结点的平衡因子2.平衡二叉树满足(1)树中任一结点的平衡因子的绝对值不超过1(2)任一结点的左子树和右子树均是平衡二叉树如图所示即为一个平衡二叉树:如图是一个非二叉树:由于二平衡二叉树是一种特殊的二叉搜索树,其查找操作与二叉搜索树类似,不再考虑;(二)平衡二叉树的插入原创 2022-04-15 17:39:45 · 2380 阅读 · 0 评论 -
二叉树的应用---1.二叉搜索树
(一)二叉搜索树的定义:该树的每一个结点都有一个作为搜索依据的关键码,对于任意结点而言,其左子树上的结点的关键码均小于右子树的关键码,如图所示(二)二叉搜索树的查找:常用的算法是分割查找法:思想:1.若根结点的关键码等于查找的键值2.若键值小于根结点的关键码的值,则继续在左子树中查找,若键值大于结点的关键码值,则继续在右子树中寻找template<class T>BinarySearchTreeNode<T>*BinarySearchTree<T>::se原创 2022-04-15 10:07:27 · 502 阅读 · 0 评论 -
二叉树抽象数据类型及遍历实现
(一)树的基本定义:树是n个结点组成的有限集合;1.n=0时,它是一个空树2.n>0时,所有结点中存在一个根结点,其余结点可分为m个互不相交的子集合,每个集合都是一个满足定义的树如图即为一棵树:树的基本术语:结点:树中的每一个元素都称为一个结点边:用<m,n>表示从m到n的某个连线代表m与n之间有某种关系,这种关系称为边双亲结点和孩子结点:其中m是n的双亲结点,n是m的孩子节点兄弟结点:两个结点有一个共同的双亲结点,两个结点为兄弟结点叶子结点:没有孩子结点的结点原创 2022-04-14 17:05:38 · 1731 阅读 · 0 评论