中文版主要数据结构.pptx
线性表的顺序存储结构;TypedefstructLNode{
ElemTypedata;//数据域
structLnode*next;//指针域
}LNode,*LinkList;;#defineMAX_TREE_SIZE100
//二叉树的最大结点数
typedefTElemTypeSqBiTree[MAX_
TREE_SIZE];
//0号单元存储根结点
SqBiTreebt;;例如:;;哈夫曼树与
哈夫曼编码;最优树的定义
;树的带权路径长度定义为:
树中所有叶子结点的带权路径长度之和
WPL(T)=?wklk(对所有叶子结点)。;;根据给定的n个权值{w1,w2,…,wn},
构造n棵二叉树的集合
F={T1,T2,…,Tn},
其中每棵二叉树中均只含一个带权值
为wi的根结点,其左、右子树为空树;;在F中选取其根结点的权值为最
小的两棵二叉树,分别作为左、
右子树构造一棵新的二叉树,并
置这棵新的二叉树根结点的权值
为其左、右子树根结点的权值之
和;;从F中删去这两棵树,同时加入
刚生成的新树;;9;6;指的是,任何一个字符的编码都
不是同一字符集中另一个字符的编码
的前缀。;Aij={;有向图的邻接矩阵为非对称矩阵;typedefstructArcCell{//弧的定义
VRTypeadj;//VRType是顶点关系类型。
//对无权图,用1或0表示相邻否;
//对带权图,则为权值类型。
InfoType*info;//该弧相关信息的指针
}ArcCell,
AdjMatrix[MAX_VERTEX_NUM]
[MAX_VERTEX_NUM];;typedefstruct{//图的定义
VertexType//顶点信息
vexs[MAX_VERTEX_NUM];
AdjMatrixarcs;//弧的信息
intvexnum,arcnum;//顶点数,边数
GraphKindkind;//图的种类标志
}MGraph;;0A14
1B045
2C35
3D25
4E01
5F123;14;;typedefstructArcNode{
intadjvex;//该弧所指向的顶点的位置
structArcNode*nextarc;
//指向下一条弧的指针
InfoType*info;//该弧相关信息的指针
}ArcNode;;typedefstructVNode{
VertexTypedata;//顶点信息
ArcNode*firstarc;
//指向第一条依附该顶点的弧
}VNode,AdjList[MAX_VERTEX_NUM];;typedefstruct{
AdjListvertices;
intvexnum,arcnum;
intkind;//图的种类标志
}ALGraph;