Concepts8

⚙️AlgorithmIntermediate

Bidirectional BFS (Meet in the Middle Search)

Bidirectional BFS searches forward from the start and backward from the goal to meet in the middle, drastically reducing explored states.

#bidirectional bfs#meet in the middle#two-ended search+11
⚙️AlgorithmIntermediate

SPFA (Shortest Path Faster Algorithm)

SPFA is a queue-based optimization of Bellman–Ford that only relaxes edges from vertices whose distance just improved.

#spfa#bellman-ford#shortest path+12
⚙️AlgorithmIntermediate

Dijkstra's Algorithm

Dijkstra's algorithm finds shortest path distances from one source to all vertices when all edge weights are non-negative.

#dijkstra#shortest path#greedy+11
⚙️AlgorithmIntermediate

Bellman-Ford Algorithm

Bellman–Ford finds single-source shortest paths even when some edge weights are negative.

#bellman-ford#single-source shortest paths#negative weights+12
⚙️AlgorithmIntermediate

Dijkstra - Variations and Applications

Dijkstra’s algorithm can be adapted to track the second shortest path by keeping the best and second-best distances per vertex.

#dijkstra#second shortest path#k shortest paths+12
⚙️AlgorithmIntermediate

Breadth-First Search (BFS)

Breadth-First Search (BFS) explores a graph level by level, visiting all vertices at distance d from the source before any at distance d+1.

#bfs#breadth first search#graph traversal+12
⚙️AlgorithmIntermediate

Multi-Source BFS

Multi-source BFS explores an unweighted graph starting from several sources at once to compute the minimum distance to any source for every vertex.

#multi-source bfs#graph algorithms#shortest path+11
⚙️AlgorithmIntermediate

0-1 BFS

0-1 BFS is a shortest path algorithm specialized for graphs whose edge weights are only 0 or 1.

#0-1 bfs#binary weights#shortest path+12