![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构实验
文章平均质量分 86
爱程序员的编程
在校大学生
展开
-
实验内容:二叉排序树。
插入:由于二叉排序树中的每个结点恰好存放一个关键字,所以插入关键字k就是插入一个结点。从插入算法InsertBST看到,每个结点插入时都需要从根结点开始比较,若比根结点的key值小,当前指针移到左子树,否则当前指针移到右子树,如此这样,直到当前指针为空,再创建一个存放关键字k的结点并链接起来。因此可知,任何结点插入二叉排序树时都是作为叶子结点插入的。创建:一个关键字集合有多个关键字序列,不同的关键字序列采用上述创建算法得到的二叉排序树可能不同。原创 2024-07-22 17:05:39 · 682 阅读 · 0 评论 -
实验内容:拓扑排序
设计一个算法,对它进行拓扑排序。原创 2024-07-21 12:06:14 · 638 阅读 · 0 评论 -
图的两种遍历方法及对应的生成树
本次实验通过深度优先生成树和广度优先生成树的实现,可以建立起基于图的树结构,便于对图的结构进行理解和处理。同时也可以让我们更好地理解深度优先遍历和广度优先遍历算法的实现过程和原理。在编写代码的过程中,需要注意记录节点间的连接关系,并根据具体情况选择合适的。但是该代码生成的树并未能用树的存储结构来存储,只是简单的用数组输出了各节点之间的关系,还有优化空间,可以用孩子链存储结构来存储。原创 2024-07-17 12:23:38 · 322 阅读 · 0 评论 -
二叉树后序遍历的非递归算法
二叉树后序遍历的非递归算法,严格按照上述伪代码的形式原创 2024-07-17 12:11:36 · 729 阅读 · 0 评论 -
三元组表实现稀疏矩阵的转置
求出原稀疏矩阵的每一列的第一个非0元素在转置后的三元组中的哪个位置,扫描原三元组列上元素依次存放到转置后的三元组位置。稀疏矩阵第一列中的第一个非0元素一定存放在转置后三元组数组的 0 位置,第二列的第一个非0元素的位置等于第一列第一个非0元素在转置后三元组数组的位置加上第一列的非0元素个数,以此类推。时间复杂度为O(n+t),n为矩阵的列数,t为矩阵非零元素的个数。"——————————原矩阵三元组—————————————""————————转制后的矩阵三元组————————————"原创 2024-07-16 21:29:27 · 464 阅读 · 0 评论 -
实验内容:火车车厢重排问题。
队列相当于一种操作限制的线性表,只能在一端进行插入操作,另一端进行删除操作,被称为先进先出表。队列通常作为一种存放临时变量的容器,如果先存入的元素先处理,就可采用队列。该算法中用到的队列是线性存储结构,只要在出队入队操作中稍加修改,就会变成环形队列。当火车车厢是任意打乱顺序的排列,两条缓冲轨是无法解决整个问题的,需要多添加几个轨道,也就是多定义队列来解决这个问题。原创 2024-07-16 12:14:10 · 587 阅读 · 0 评论 -
一元多项式求和
数据结构链表原创 2024-07-15 12:33:50 · 578 阅读 · 0 评论