This document describes Bellman Ford's algorithm for finding the shortest paths in a graph. It begins with an introduction comparing Bellman Ford to Dijkstra's algorithm. It then explains the working mechanism, provides an example problem, and outlines the pseudocode. Key points are that Bellman Ford can handle graphs with negative edge weights, works by iteratively relaxing path estimates, and has a worst case time complexity of O(VE) where V is the number of vertices and E is the number of edges. Applications include distance vector routing protocols and finding shortest paths. The conclusion compares Bellman Ford to Dijkstra's algorithm.