The document describes routing algorithms used in computer networks. It discusses two main types of routing algorithms: link-state algorithms and distance-vector algorithms. Link-state algorithms use a complete map of the entire network topology to calculate the shortest paths between all nodes, while distance-vector algorithms use an iterative process where each router shares routing information with neighbors to determine the shortest paths. The document then provides examples of how Dijkstra's algorithm, a link-state algorithm, and the Bellman-Ford distance-vector algorithm work to calculate the optimal paths through a sample network.