基于visual Studio2013解决算法导论之053图的邻接表表示

来源:互联网 发布:多个数最小公倍数算法 编辑:程序博客网 时间:2024/05/29 12:02



题目

图的邻接表表示


解决代码及点评

// 图的邻接表表示.cpp : 定义控制台应用程序的入口点。//#include <iostream>#include <stack>using namespace std;template<class T>class EdgeNode{public:T adjvex;EdgeNode *pnext;};template<class T>class Graph{public:Graph();~Graph();void CreatALGraph();private:EdgeNode<T> *adjlist[100];   //数组int n;  //顶点数int e;   //边数};template<class T>Graph<T>::Graph(){//adjlist = new EdgeNode<T>;}template<class T>Graph<T>::~Graph(){}template<class T>void Graph<T>::CreatALGraph(){//EdgeNode<T> *adjlist2 = adjlist;int i;int j;cout<<"输入顶点数";cin>>i;cout<<endl;n=i;for (i = 0;i<n;i++){T data;cout<<"输入顶点值";cin>>data;adjlist[i] = new EdgeNode<T>;adjlist[i]->adjvex = data;adjlist[i]->pnext = NULL;cout<<adjlist[i]->adjvex<<endl;//adjlist++;}cout<<"输入边数";cin>>e;for (int i=0;i<e;i++){int from;int to;cout<<endl<<"输入起点(节点序号)";cin>>from;cout<<endl<<"输入终点(节点序号)";cin>>to;EdgeNode<T> *node = new EdgeNode<T>;node->adjvex = adjlist[to]->adjvex;node->pnext = adjlist[from];adjlist[from] = node;}}int main(int argc, char* argv[]){Graph<int> g;g.CreatALGraph();system("pause");return 0;}



代码下载及其运行

代码下载地址:http://download.csdn.net/detail/yincheng01/6858815

解压密码:c.itcast.cn


下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:

1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”


2)在下拉框中选择相应项目,项目名和博客编号一致

3)点击“本地Windows调试器”运行


程序运行结果








0 0