
数据结构(c++描述)
文章平均质量分 62
photores1st
这个作者很懒,什么都没留下…
展开
-
平衡二叉树(c++)
平衡二叉树定义平衡二叉树类二叉树的调整右单旋左单旋左右双旋插入删除操作完整代码定义平衡树(Balance Tree,BT)指的是,任意节点的子树的高度差都小于等于1。常见的符合平衡树的有,B树(多路平衡搜索树)、AVL树(二叉平衡搜索树)等。平衡树可以完成集合的一系列操作,时间复杂度和空间复杂度相对于“2-3树”要低,在完成集合的一系列操作中始终保持平衡,为大型数据库的组织、索引提供了一条新的途径平衡二叉树类继承二叉树类二叉树类代码(GitHub):https://github.com/r原创 2021-03-10 17:22:04 · 834 阅读 · 0 评论 -
线性表(c++描述)
线性表(c++描述)最近学了c++,把数据结构用c++再写一遍,加深一下对c++语法的理解学习c++本来是想利用他的库,节省一下写算法的时间,c语言这种面向过程语言对每个数据结构都要再写一遍,或者因为数据类型,再修改一遍,复用性有比较大的局限性。写了一点线性表的算法后,发现c++的多态性确实很好用,模板类可以很轻松的应用于多种数据类型,但是,对于简单的题目来说,代码有些繁琐,特别是对抽象类的继承,顺序表需要继承这个纯虚函数,但链表不需要,有时候就有点头疼。另外,吐槽下清华大学出版社的数据结构(c++)原创 2021-02-26 13:18:00 · 324 阅读 · 0 评论 -
二叉搜索树(c++实现)
二叉搜索树二叉搜索树简而言之就是右子树值比根节点大,左子树值都比根节点小二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。二叉搜索树作为一种经典的数据结构,它既有链表的快速插入与删除操作的特点,又有数组快速查找的优势;所以应用十分广泛,例如在文件系统和数据库系统一原创 2021-03-10 16:24:41 · 337 阅读 · 0 评论 -
二叉树的遍历(c++)
二叉树遍历二叉树存储结构二叉树类先序遍历中序遍历后序遍历层序遍历建立二叉树本篇文章使用c++描述普通二叉树的遍历操作代码详见:https://github.com/rebelsisyphus/vscode/blob/main/.vscode/data%20structure/Bintree/tree.h二叉树存储结构使用链式存储结构template <class T>struct BinTreeNode{ T data; int height; BinTree原创 2021-03-10 15:47:24 · 427 阅读 · 0 评论