Loopless algorithm
Introduction In computational combinatorics, a '''loopless algorithm''' or '''loopless imperative algorithm''' is an imperative algorithm that generates successive combinatorial objects, such as partitions, permutations, and combinations, in constant time and the first object in linear time. The objects must be immediately available in simple form without requiring any additional steps.A '''loopless functional algorithm''' is a functional algorithm that takes the form ''unfoldr step • prolog'' where ''step'' takes constant time and ''prolog'' takes linear time in the size of the input. The standard function ''unfoldr'' is a right-associative Bird unfold.
References