Dijkstra's algorithm is used to find the shortest paths between nodes in a graph. It works by growing the shortest path tree one vertex at a time. It begins at the source node and examines all neighboring nodes, updating paths and tracking predecessors until the shortest path to every node has been determined. The Ford-Fulkerson method finds the maximum flow in a flow network by iteratively augmenting the flow along paths with available residual capacity until no more flow is possible. It works to push flow from the source to the sink along paths with available capacity until the network is saturated.