time limit: 1000ms
memory limit: 65536kb
submit
statistic
discuss
problem description
給定乙個有向圖,判斷該有向圖是否存在乙個合法的拓撲序列。
input
輸入包含多組,每組格式如下。
第一行包含兩個整數n,m,分別代表該有向圖的頂點數和邊數。(n<=10)
後面m行每行兩個整數a b,表示從a到b有一條有向邊。
output
若給定有向圖存在合法拓撲序列,則輸出yes;否則輸出no。
example input
1 02 21 2
2 1
example output
yesno
#include#define n 1005
int pic[n][n];
int check[n];
int tp[n];
int rear=0;
void initpic(int n)
}int checking(int start,int n)
} return 1;
}void deleting(int start,int n)
}void tpsort(int n)
} }}void print(int n)
printf("\n");
}void rollback(int n)
} rear=0;
}int main()
else
//print(n);
rollback(n);
} return 0;
}
拓撲排序 鄰接矩陣
include stdafx.h include include include include using namespace std define infinity int max define max vertex num 20 頂點最多個數 define length 5 頂點字元長度 鄰接...
C 拓撲排序(鄰接矩陣與鄰接表
博主新手,最近在學習拓撲排序,查閱網上資料發現有些難懂且很多方法的 不盡相同,於是就想著試試自己能不能寫出來,經過一段時間的嘗試,最終實現了拓撲排序,現在將自己的想法發表出來,可能有些瑕疵,希望各位看後不吝賜教 不知道是不是就是網上的方法,之前看網上的沒看懂.建立鄰接矩陣,輸入頂點數和邊數,初始化所...
拓撲排序 關鍵路徑(鄰接矩陣實現)
include include define inf 65535 using namespace std int map 110 110 構建鄰接表 int ear 110 in 110 late 110 構建最早出發表和最晚完成表 int n,m,max stackturn 存放拓撲排序的順序,最...