编辑: 阿拉蕾 2019-07-07

五、算法填空(共2小题,每空2分,共20分) 1. 已知一个顺序存储线性表的元素递增有序排列.下面的算法实现删除该表中值相同的元素.请在_处填上适当内容,使其成为一个完整算法. typedef struct { ElemType *elem;

int length ;

int listsize ;

} SqList;

void dele(SqList &L) { int i=0, j=1;

while ( (1) ) { if ( L.elem[j]!=L.elem[i]) L.elem[++i]= (2) ;

(3) ;

} L.length= (4) ;

} 2. 下面算法是用Dijkstra算法求有向网G的v0顶点到其余顶点v的最短路径P[v]及其带权长度D[v].若P[v][w]为TRUE,则w是从v0到v当前求得最短路径上的顶点. final[v]为TRUE当且仅当v∈S(S为已求得最短路径的终点的集合), 即已经求得从v0到v的最短路径.请在_处填上适当内容,使其成为一个完整算法. typedef struct ArcCell{ VRType adj;

InfoType *info;

//该弧相关信息的指针 }ArcCell, AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM];

tpyedef struct{ VertexType vexs[MAX_VERTEX_NUM];

//顶点向量 AdjMatrix arcs;

//邻接矩阵 int vexnum,arcnum;

//图的当前顶点数和弧数 GraphKind kind;

//图的种类标志 }MGraph;

void ShortestPath_DIJ( MGraph G, int v0, PathMatrix &P, ShortPathTable &D) { for (v=0;

v

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题