Изменения

Перейти к: навигация, поиск
Псевдокод
==Псевдокод==
<tex>G, H</tex> //G - граф , H - инвертированный <tex>ord[], component</tex> //список вершин в порядке окончания обработки, <tex> component[]</tex> //номер компоненты, к который относиться вершина
'''dfs'''(<tex>v</tex>) //первый поиск в глубину, определяющий порядок обхода
<tex>color[v] \leftarrow 1</tex>
'''for''' (всех <tex>i</tex> смежных с <tex>v</tex>)
Добавляем вершину <tex>v</tex> в конец списка <tex>ord</tex>
'''dfs2'''(<tex>v</tex>) //второй поиск в глубину, выявляет компоненты сильной связности в графе
<tex>component[v] \leftarrow col</tex>
'''for''' (всех <tex>i</tex> смежных с <tex>v</tex>)
'''main'''()
считываем исходные данные, формируем массивы <tex>G</tex> и <tex>H</tex>
'''for''' (по всем вершинам <tex>i</tex> графа <tex>G</tex>) //формируем массив ord[]
'''if''' (вершина <tex>i</tex> не посещена)
'''dfs'''(i);
148
правок

Навигация