} ArcNode *p = new ArcNode; p->adjvex = j; p->nextarc = vertices[i].firstarc; vertices[i].firstarc = p; //置对称边 ArcNode *q = new ArcNode; q->adjvex = i; q->nextarc = vertices[j].firstarc; vertices[j].firstarc = q; } } void Print_Road(int u, int v, int l, int d) { //求出一条长度为l的从u到v的路径 int i = 0; int m; d++; visited[u] = true; path[d] = u; if (u == v && d == l) { for ( i = 0; i < l; i++) cout << vertices[path[i]].data << \ cout << vertices[path[i]].data << endl; } else if (u == v && d != l) { //出现这种情况直接回溯上一顶点 goto loop; } ArcNode *p = vertices[u].firstarc; while (p) { m = p->adjvex; if (!visited[m]) Print_Road(m, v, l, d); p = p->nextarc; } //路径长度减一 loop: visited[u] = false; d--; }
};
Main.cpp
#include \#include
using namespace std; int main() { Graph G; string city1, city2; int pos1, pos2; G.Build_Graph();//建图 cout << \请输出两座城市的名称:\ cin >> city1 >> city2 ; pos1 = G.Position(city1);//第一所城市的位置 pos2 = G.Position(city2);//第二所城市的位置 if (pos1 == -1 || pos2 == -1) { cout << \顶点中有不符合要求的,操作失败\ } else { for (int i = 0; i < G.GetVexNum(); i++) visited[i] = false; } cout << \城市 \到 \的所有简单路径如下:\ for (int j = 1; j <= G.getArcnum();j++) G.Print_Road(pos1, pos2, j, -1);//输出两座城市间的所有简单路径 system(\ return 0; }
读书的好处
1、行万里路,读万卷书。
2、书山有路勤为径,学海无涯苦作舟。
3、读书破万卷,下笔如有神。
4、我所学到的任何有价值的知识都是由自学中得来的。——达尔文
5、少壮不努力,老大徒悲伤。
6、黑发不知勤学早,白首方悔读书迟。——颜真卿
7、宝剑锋从磨砺出,梅花香自苦寒来。
8、读书要三到:心到、眼到、口到
9、玉不琢、不成器,人不学、不知义。
10、一日无书,百事荒废。——陈寿
11、书是人类进步的阶梯。
12、一日不读口生,一日不写手生。
13、我扑在书上,就像饥饿的人扑在面包上。——高尔基
14、书到用时方恨少、事非经过不知难。——陆游
15、读一本好书,就如同和一个高尚的人在交谈——歌德
16、读一切好书,就是和许多高尚的人谈话。——笛卡儿
17、学习永远不晚。——高尔基
18、少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。——刘向
19、学而不思则惘,思而不学则殆。——孔子
20、读书给人以快乐、给人以光彩、给人以才干。——培根