2013年8月20日

摘要: 升级版不用栈,用递归来列举出所有的拓扑序列,循环内嵌套递归的思想值得好好领悟!例题:若干士兵站队,已知一些约束的关系,比如A必须站在B前面,B必须站在F前面等。求所有可能的站队方式输入:所有的约束关系,比如AB(表示A必须站在B前面)HJ输出:列出所有的站队方式测试用例:代码: 1 #include 2 #include 3 4 #define MAX_VERTEX_NUM 100 5 6 int ver_num; 7 int indeg[MAX_VERTEX_NUM]; 8 int help[MAX_VERTEX_NUM]; 9 int graph[MAX_VERTEX_NUM][M... 阅读全文
posted @ 2013-08-20 23:24 RAUL_AC 阅读(322) 评论(0) 推荐(0)
摘要: 总结下算法好了:(1)构图:每个活动是一个顶点,如果A必须排在B前面,那么有边从顶点A指向顶点B,顶点B的入度+1(2)遍历所有顶点,将入度为0的顶点入栈(3)如果栈不为空,则将栈顶出栈,然后将该顶点从图中删掉,即该点指向的点的入度-1,如果减后为0则入栈,重复(3)简单版的代码,只能举出一种拓扑排序: 1 #include 2 #include 3 4 #define MAX_VERTEX_NUM 100 5 6 int ver_num; 7 char vertex[MAX_VERTEX_NUM]; 8 int indeg[MAX_VERTEX_NUM]; 9 int graph[M... 阅读全文
posted @ 2013-08-20 21:56 RAUL_AC 阅读(847) 评论(0) 推荐(0)

导航