资源简介

这是包含所有数据结构四次实验的源码,在大家不会的时候可以给大家参考,但是不希望大家去抄袭,态度决定高度!

资源截图

代码片段和文件信息

#include“mgraph.h“
#include
template
class ExtMGraph:public MGraph
{
public:
ExtMGraph(int mSizeconst T noedg):MGraph(mSizenoedg){}            //调用父类构造函数
void DFS();
void BFS();
private:
void DFS(int ubool* visited);
void BFS(int ubool* visited); 
};
template
void ExtMGraph::DFS()
{
bool *visited = new bool[n];
for(int i=0;i visited[i] = false;
for(i=0;i if(visited[i]==false)
DFS(ivisited);
delete[] visited;
}
template
void ExtMGraph::BFS()
{
bool *visited = new bool[n];
for(int i=0;i visited[i] = false;
for(i=0;i if(visited[i]==false)
BFS(ivisited);
delete[] visited;
}
template
void ExtMGraph::DFS(int ubool* visited)
{
visited[u] = true;
cout< for(int i=0;i {
if(a[u][i]!=noEdge&&visited[i]==false)
DFS(ivisited);
}
}
template
void ExtMGraph::BFS(int ubool* visited)
{
queue q;
visited[u] = true;
cout< q.push(u);
while(q.empty()==false)
{
u=q.front();
q.pop();
for(int i=0;i {
if(a[u][i]!=noEdge&&visited[i]==false)
{
visited[i] = true;
cout< q.push(i);
}
}
}
}
int main()
{
ExtMGraph extMGraph(8-1);
extMGraph.Insert(071);
extMGraph.Insert(061);
extMGraph.Insert(051);
extMGraph.Insert(741);
extMGraph.Insert(621);
extMGraph.Insert(531);
extMGraph.Insert(341);
extMGraph.Insert(411);


cout<<“DFS()函数输出结果:“< extMGraph.DFS();
cout<<“\nBFS()函数输出结果:“< extMGraph.BFS();
cout< return 0;
}

评论

共有 条评论