- 博客(4)
- 收藏
- 关注
原创 2020-11-14
用二叉树实现简单学生健康管理系统 学校课程最近有要求数据结构实验用二叉树实现一个简单的学生健康新消息管理系统,这里记录一下自己实现的方法,主要就是利用二叉搜索树的性质进行各项操作。代码比较简陋,可能有不完美的地方,实现是完全没问题的,下面给主要代码 头文件定义 #ifndef DINTREE_h #define DINTREE_H #include<iostream> #include<cmath> #include<string> #include<cstr
2020-11-14 12:28:28 274
原创 2020-11-14
课程里有做关于二叉树的一些基本操作,分享到这里记录一下自己的想法; 第一题:左右子树交换 void swap(BinTreeNode<T> *p)//p一开始为根,如果节点为空就直接返回,否则交换该节点左右子树,两个子树都会被交换 { BinTreeNode<T> * q; if (p) { q = p->leftchild; p->leftchild = p->rightchild; p->rightchild = q;
2020-11-14 12:20:13 69
原创 2020-10-31
单源最短路Dijkstra算法 学习浙大数据结构课程,有个关于单源最短路的题目,下面总结下自己做这题的感悟,自己也是第一次学习这个算法 旅游规划 主要思路还是网课课程里讲解的一样,有个自己理解清楚地关键地方就是,每次已经收集的点影响的是他周围点的路径长度,而周围的点此时仍然未被收集进已访问集合。所以就这个题目而言,每加入一个点,目标点到源点的dist值可能会减小,若减小,则更新目标点的dist值,此时目标点是被影响的点,不是已收集的点,所以可以再收集其他点。若是加入一个点后,目标点到源点的dist值与原来相
2020-10-31 13:29:09 54
原创 初学floyd算法
初学floyd算法 从浙江大学数据结构课程上初学floyd多源最短路算法。 下面记录下我的理解: Dk[i][j]记为在编号k顶点的加入下,i→j的最短路径,所以假设有n个元素,k为从0开始一直到n-1。从D0一直到Dn-1[i][j]一直递推就给了i到j的最短距离。 一开始的D矩阵可以初始化为邻接矩阵,没有变相邻的位置就可移植为无穷大,方便后面依次比较减小,对角线元素为0; 如果把k加入进去后,两端最短距离之和小于之前的距离,即D[i][k]+D[k][j]<D[i][j]就更新D[i][j]. /
2020-10-29 17:08:56 119 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人