SNAP Library, User Reference
2012-10-02 12:56:23
SNAP, a general purpose network analysis and graph mining library
|
Public Member Functions | |
TBreathFS (const PGraph &GraphPt, const bool &InitBigQ=true) | |
void | SetGraph (const PGraph &GraphPt) |
Sets the graph to be used by the BFS to GraphPt and resets the data structures. | |
int | DoBfs (const int &StartNode, const bool &FollowOut, const bool &FollowIn, const int &TargetNId=-1, const int &MxDist=TInt::Mx) |
Performs BFS from node id StartNode for at maps MxDist steps by only following in-links (parameter FollowIn = true) and/or out-links (parameter FollowOut = true). | |
int | GetNVisited () const |
Returns the number of nodes visited/reached by the BFS. | |
void | GetVisitedNIdV (TIntV &NIdV) const |
Returns the IDs of the nodes visited/reached by the BFS. | |
int | GetHops (const int &SrcNId, const int &DstNId) const |
int | GetRndPath (const int &SrcNId, const int &DstNId, TIntV &PathNIdV) const |
Public Attributes | |
PGraph | Graph |
TSnapQueue< int > | Queue |
TInt | StartNId |
TIntH | NIdDistH |
Breath-First-Search class. The class is meant for executing many BFSs over a fixed graph. This means that the class can keep the hash tables and queues initialized between different calls of the DoBfs() function.
TBreathFS< PGraph >::TBreathFS | ( | const PGraph & | GraphPt, |
const bool & | InitBigQ = true |
||
) | [inline] |
int TBreathFS< PGraph >::DoBfs | ( | const int & | StartNode, |
const bool & | FollowOut, | ||
const bool & | FollowIn, | ||
const int & | TargetNId = -1 , |
||
const int & | MxDist = TInt::Mx |
||
) |
Performs BFS from node id StartNode for at maps MxDist steps by only following in-links (parameter FollowIn = true) and/or out-links (parameter FollowOut = true).
int TBreathFS< PGraph >::GetHops | ( | const int & | SrcNId, |
const int & | DstNId | ||
) | const |
Returns the shortst path distance between SrcNId and DistNId. Note you have to first call DoBFs(). SrcNId must be equal to StartNode, otherwise return value is -1.
int TBreathFS< PGraph >::GetNVisited | ( | ) | const [inline] |
Returns the number of nodes visited/reached by the BFS.
int TBreathFS< PGraph >::GetRndPath | ( | const int & | SrcNId, |
const int & | DstNId, | ||
TIntV & | PathNIdV | ||
) | const |
Returns a random shortest path from SrcNId to DstNId. Note you have to first call DoBFs(). SrcNId must be equal to StartNode, otherwise return value is -1.
void TBreathFS< PGraph >::GetVisitedNIdV | ( | TIntV & | NIdV | ) | const [inline] |
Returns the IDs of the nodes visited/reached by the BFS.
Sets the graph to be used by the BFS to GraphPt and resets the data structures.
TSnapQueue<int> TBreathFS< PGraph >::Queue |