We encourage a specific view of graph algorithms, which can be paraphrased by “iterate over the graph elements in a specific order and perform computations in each step”. Data structures will be used to define the processing order, and we will introduce recursive mapping/array definitions as a vehicle for specifying the desired computations. Being concerned with the problem of implementing graph algorithms, we outline the extension of a functional programming language by graph types and operations. In particular, we explicate an exploration operator that essentially embodies the proposed view of algorithms. Fortunately, the resulting specifications of algorithms, in addition to being compact and declarative, are expected to have an almost as efficient implementation as their imperative counterparts.
CITATION STYLE
Erwig, M. (1993). Graph algorithms = Iteration + data structures?: The structure of graph algorithms and a corresponding style of programming. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 657 LNCS, pp. 277–292). Springer Verlag. https://doi.org/10.1007/3-540-56402-0_54
Mendeley helps you to discover research relevant for your work.