---
title: Loopless algorithm
slug: loopless-algorithm
qid: 
snapshot: enwiki-001170204930
content_hash: 
license: CC BY-SA 4.0
source: https://en.wikipedia.org/w/index.php?oldid=1170204930
tags: [20476734, 20477110, 23468805]
---

# Loopless algorithm

> [!note] Provenance
> Snapshot `enwiki-001170204930` · content root `…`
> Derived from <https://en.wikipedia.org/w/index.php?oldid=1170204930> · Licensed CC BY-SA 4.0

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.

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==
