Logo
Pattern

Discover published sets by community

Explore tens of thousands of sets crafted by our community.

Shortest Path Problems

10

Flashcards

0/10

Still learning
StarStarStarStar

Shotgun Hill Climbing

StarStarStarStar

Although not a typical shortest path algorithm, shotgun hill climbing is a heuristic search algorithm that can be applied to find paths. It is a variant of hill climbing that tries multiple random initial states and chooses the best one.

StarStarStarStar

Greedy Best-First Search

StarStarStarStar

Greedy best-first search is a search algorithm that expands the node that appears to be closest to the goal, as determined by a heuristic function. However, it doesn't always find the shortest path because it prioritizes proximity to the goal over path cost.

StarStarStarStar

Dijkstra's Algorithm

StarStarStarStar

Dijkstra's algorithm finds the shortest path from a single source to all other vertices in a weighted graph with non-negative edge weights. It's a greedy algorithm that iteratively selects the vertex with the minimum distance from the source, updating the distances of its adjacent vertices.

StarStarStarStar

Bidirectional Search

StarStarStarStar

Bidirectional search is a graph search algorithm that finds the shortest path from an initial vertex to a goal vertex by running two simultaneous searches—one forward from the initial vertex, and one backward from the goal vertex—and stopping when the two searches meet.

StarStarStarStar

Breadth-First Search (BFS)

StarStarStarStar

Breadth-first search is an algorithm for traversing or searching tree or graph data structures. In unweighted graphs, BFS can be used to find the shortest path from a single source vertex to all other vertices by exploring neighbors level by level.

StarStarStarStar

A* Search Algorithm

StarStarStarStar

A* search algorithm is used for finding the shortest path to a goal node in a weighted graph using heuristics to guide its search. It combines Dijkstra's algorithm with a best-first search.

StarStarStarStar

Floyd-Warshall Algorithm

StarStarStarStar

The Floyd-Warshall algorithm finds the shortest paths between every pair of vertices in a weighted graph. This algorithm works for both positive and negative edge weights, but cannot handle negative cycles.

StarStarStarStar

Johnson's Algorithm

StarStarStarStar

Johnson's algorithm finds shortest paths between all pairs of vertices in a sparse weighted directed graph. It combines both Dijkstra's and Bellman-Ford algorithms by reweighting edges to enable non-negative weights, and then using Dijkstra's algorithm for every vertex.

StarStarStarStar

Bellman-Ford Algorithm

StarStarStarStar

The Bellman-Ford algorithm calculates the shortest paths from a single source vertex to all other vertices in a weighted graph. It's capable of handling graphs with negative edge weights and can detect negative weight cycles.

StarStarStarStar

Dynamic Programming

StarStarStarStar

Dynamic programming in the context of shortest paths refers to methods like the Bellman-Ford and Floyd-Warshall algorithms which break the problem into subproblems, solve them independently, and use their solutions to construct the answer for the larger problem.

Know
0
Still learning
Click to flip
Know
0
Logo

© Hypatia.Tech. 2024 All rights reserved.