This paper presents efficient algorithms for finding shortest paths in sparse networks. The authors analyze existing algorithms and introduce a new implementation for priority queues, along with a class of "arc set partition" algorithms. For the single source problem on networks with nonnegative arcs, the algorithm achieves a running time of O(min(n^{1+1/k} + e, (n + e) log n)), where n is the number of nodes and e is the number of arcs. For the single source and all pairs problem on unrestricted networks, the running time is O(min(n^{2+1/k} + ne, n^2 log n + ne log n)). The algorithms are shown to be optimal for sparse networks and efficient for dense networks. The paper also discusses the application of these algorithms to the all pairs problem, demonstrating how they can be used to solve the problem in time O(min(n^{2+1/k} + ne, n^2 log n + ne log n)). The authors conclude that their algorithms are simple and of theoretical interest, and they acknowledge the contributions of others in the field.This paper presents efficient algorithms for finding shortest paths in sparse networks. The authors analyze existing algorithms and introduce a new implementation for priority queues, along with a class of "arc set partition" algorithms. For the single source problem on networks with nonnegative arcs, the algorithm achieves a running time of O(min(n^{1+1/k} + e, (n + e) log n)), where n is the number of nodes and e is the number of arcs. For the single source and all pairs problem on unrestricted networks, the running time is O(min(n^{2+1/k} + ne, n^2 log n + ne log n)). The algorithms are shown to be optimal for sparse networks and efficient for dense networks. The paper also discusses the application of these algorithms to the all pairs problem, demonstrating how they can be used to solve the problem in time O(min(n^{2+1/k} + ne, n^2 log n + ne log n)). The authors conclude that their algorithms are simple and of theoretical interest, and they acknowledge the contributions of others in the field.