资源简介
关于tarjan算法的代码,自己写的,和大家分享,希望大家能多多指教
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int const N=20001;
stacks;
vectormap[N]newmap[N];
bool inStack[N];
int dfsOrder[N]low[N]newOrder[N];
int nodeSCC;
void tarjan(int x)
{
dfsOrder[x]=low[x]=++node;
s.push(x);
int u;
if(map[x].empty()==false)
for(int i=0;i {
u=map[x].at(i);
if(inStack[u])
if(dfsOrder[u]==0)
{
tarjan(u);
low[x]=min(low[u]low[x]);
}
else
{
low[x]=min(low[x]dfsOrder[u]);
}
}
if(dfsOrder[x]==low[x])
{
SCC++;
while(s.top()!=x)
{
newOrder[s.top()]=SCC;
inStack[s.top()]=false;
s.pop();
}
newOrder[x]=SCC;
inStack[x]=false;
s.pop(); 相关资源
- CCS FFT c语言算法
- 小波变换算法 c语言版
- 3des加密算法C语言实现
- DES加密算法C语言实现
- 尚观培训linux许巍老师关于c语言的课
- 线性回归算法c语言实现
- 基于C语言的模拟退火算法
- C语言实现的DES对称加密算法
- 用VC6.0实现多边形扫描线填充算法
- c语言编写的货郎担算法
- Em算法(使用C++编写)
- STM32烧写算法flash包
- 永磁同步电机的FOC控制算法
- Proteus仿真:PID算法输出.rar
- 一个模糊PID温度控制算法源代码
- 经典滤波算法
- KMP算法C语言程序
- SVM算法实现(源码+文档)
- 算法A律U律实现
- 人工蜂群算法.docx
- BlowFish加密算法
- C语言常用算法源代码
- c++数组快排算法
- 算法表达式求值.cpp
- PID算法.c
- 关于LED制作的源代码合集(38套)
- QR二维码C++源码 算法实现
- 基于opencv漫水填充算法综合
- 信息学奥赛一本通——算法部分
- 银行家算法分配资源的模拟实现(m
川公网安备 51152502000135号
评论
共有 条评论