文档介绍:: .
数据构造(C语言版)
1. 第一章:绪论数据构造是一门研究非数值计算的程序设计问题中计算机的操 假设结点有左子树,那么其lchild〔rchild〕域指向指示其左(右)孩子,否那么令lchild〔rchild〕域指示其前驱〔后继〕,这种结点构成的二叉链表做为二叉树的存储构造称为线索链表。
10. 从树中一个结点到另一个结点之间的分支构成这两个结点之间的路径,路径上的分支数
目称做路径长度。树的路径长度是从树根到每一个结点的路径长度之和。树的带权
路径长度为树中所有叶子结点的带权路径长度之和。
11. 假设有n个权值{W1,W2,……,Wn},试构造一棵有n个叶子结点的二叉树,每个叶子结
点带树为Wi,那么其中带权路径长度WPL最小的二叉树称为最优二义树或赫夫曼树。
1. 第七章:图在图中的数据元素通常称做顶,成,<v,w>表示从v到W的一条弧,且称v为弧尾,称w为弧头,此时称图为有向图,假设<v,w>表示v和W之间的一条边,此时的图称为无向图。
2. 有n*(n-1)/2条边的无向图称为完全图。具有n(n-1)条弧的有向图称为有向完全图,
有很少条边或弧的图称为稀疏图,反之称为稠密图。有时图的边或弧具有与它相关的数,这种与图的边或弧相关的数叫做权,这种带权的图称为网。
3. 顶点v的度是和v相关联的边的数目,记为TD(V)。
4. 无向图G=(V,{E})中从点v到顶点v'的路径是一个顶点序列,路径的长度是路径上
边或弧的数目。第一个顶点和最后一个顶点一样的路径称为回路或环。序列中不重复
出现的路径称为简单路径。除了第一个顶点和最后一个顶点之外,其余顶点不重复出
现的回路,称为简单回路或简单环。
5. 在无向图G中,如果从顶点v到顶点v'有路径,那么称v和v'是连通的。如果对于图中任意两个顶点vi、vj£V,vi和vj都是连通的,那么称G是连通图。所谓连通分量指的是无向图中的极通子图。
6. 在有向图G中,如果对于每一对"vj€V,vi乒vj,从vi到vj和从vj到vi都存在路径,那
么称G是强连通图。有向图中的极大强连通子图称做有向图的强连通分量。
7. 一个连通图的生成树是一个极小连通子图,它含有图中全部顶点,但只有足以构成一
棵树的n-1条边。如果在一棵生成树上添加一条边,必定构成一个环。一棵有n个顶点的生成树有且仅有n-1条边。如果一个图有n个顶点和小于n-1条边,那么是非连通图,如果它多于n-1条边,那么一定有环。但是,有n-1条边的图不一定是生成树。
8. 如果一个有向图恰有一个顶点的入度为0,其余顶点的入度均为1,那么是一棵有向树。
一个有向图的生成森林由假设干棵有向树组成,含有图中全部顶点,但只有足以构
成假设干棵不相交的有向树的弧。
9. 图的存储构造有邻接矩阵、邻接表、逆邻接表以及十字链表等。
10. 图的遍历:指从图中某一顶点出发访遍图中其余顶点,且使每一个顶点仅被访问一次。
11. 通常有两条遍历图的路径:
深度优先搜索:类似于树的先序遍历,假设从图中某顶点v出发,在访问了v之后依次从v的未被访问的邻接点出