題意:乙個關係比較混亂的部落,輸出按照輩分排序輸出。
題解:拓撲排序裸題;
拓撲排序三步:
1.選取沒有前驅的節點輸出
2.刪去這個節點出發的邊(也就是終點入度-1)
3.重複1,2。直到所有點輸出完畢,或者剩下的點都有前驅為止。(若剩下的點都有前驅則有環);
**:
#include #include#include#includeusing namespace std;
int mp[105][105],indegree[105];
int n;
void topusort()
} indegree[mark]=-1;
que.push(mark);
for(j=0;j} while(!que.empty())
}int main()
topusort();
} // cout << "hello world!" << endl;
return 0;
}
拓撲排序(poj 2367)
題目 拓撲排序要求 無環有向圖 演算法思路 1.找出入度為0的點,輸出 2.把找到的入度為零的點刪除,並把與這個點相連的邊刪除 3.重複1,2步直到輸出所有點 實現 維護乙個in i 陣列表示點i的入度 flag 標記是否已輸出過 vector bian max 用鄰接表存圖 include inc...
poj2367 拓撲排序
題目就是讓你求拓撲序 拓撲排序就是,先找到入度為0的點,刪去,同時把它的所有出度刪去,再找新的入度為0的點,刪去的點的順序就是拓撲序 include include include include using namespace std int s 233 233 int in degree 233...
拓撲排序 poj 2367
由aov網構造拓撲序列的拓撲排序演算法主要是迴圈執行以下兩步,直到不存在入度為0的頂點為止。1 選擇乙個入度為0的頂點並輸出之 2 從網中刪除此頂點及所有 出邊。迴圈結束後,若輸出的頂點數小於網中的頂點數,則輸出 有 迴路 資訊,否則輸出的頂點序列就是一種拓撲 序列。測試資料 第一行表示頂點數和邊數...