English
Related papers

Related papers: Multi-level Loop-less Algorithm for Multi-set Perm…

200 papers

We present a new algorithm for iterating over all permutations of a sequence. The algorithm leverages elementary~$O(1)$ operations on recursive lists. As a result, no new nodes are allocated during the computation. Instead, all elements are…

Data Structures and Algorithms · Computer Science 2025-09-16 Thomas Baruchel

This paper proposes a new algorithm for generating all permutations of multisets. The method uses transpositions only and adjacent transpositions are favoured. The algorithm requires a strong homogeneous transposition condition:…

Combinatorics · Mathematics 2023-09-22 Hans Jakob Rivertz

This article describes lossless compression algorithms for multisets of sequences, taking advantage of the multiset's unordered structure. Multisets are a generalisation of sets where members are allowed to occur multiple times. A multiset…

Information Theory · Computer Science 2014-01-27 Christian Steinruecken

An algorithm is presented for unranking permutations in transposition order: Given a seed s\in N, the algorithm produces a permutation P(s) that differs from the permutation P(s+1) by the transposition of two elements.

Combinatorics · Mathematics 2008-06-10 Konstantinos A. Blekos

Two completely new algorithms for generating permutations, shift-cursor algorithm and level algorithm, and their efficient implementations are presented in this paper. One implementation of the shift cursor algorithm gives an optimal…

Data Structures and Algorithms · Computer Science 2007-05-23 Jie Gao , Dianjun Wang

We assume the permutation $\pi$ is given by an $n$-element array in which the $i$-th element denotes the value $\pi(i)$. Constructing its inverse in-place (i.e. using $O(\log{n})$ bits of additional memory) can be achieved in linear time…

Data Structures and Algorithms · Computer Science 2020-04-22 Grzegorz Guśpiel

Given a set $\Pi$ of permutation patterns of length at most $k$, we present an algorithm for building $S_{\le n}(\Pi)$, the set of permutations of length at most $n$ avoiding the patterns in $\Pi$, in time $O(|S_{\le n - 1}(\Pi)| \cdot k +…

Discrete Mathematics · Computer Science 2017-03-20 William Kuszmaul

We solve the problem of designing an O(1) time algorithm for generating adjacent multiset combinations in a different approach from Walsh. By the word adjacent, we mean that two adjacent multiset combinations are different at two places by…

Data Structures and Algorithms · Computer Science 2015-03-03 Tadao Takaoka

We generalize a well-known algorithm for the generation of all subsets of a set in lexicographic order with respect to the sets as lists of elements (subset-lex order). We obtain algorithms for various combinatorial objects such as the…

Combinatorics · Mathematics 2024-01-03 Jörg Arndt

Memoryless computation is a new technique to compute any function of a set of registers by updating one register at a time while using no memory. Its aim is to emulate how computations are performed in modern cores, since they typically…

Computational Complexity · Computer Science 2013-10-23 Peter J. Cameron , Ben Fairbairn , Maximilien Gadouleau

We construct generating trees with one, two, and three labels for some classes of permutations avoiding generalized patterns of length 3 and 4. These trees are built by adding at each level an entry to the right end of the permutation,…

Combinatorics · Mathematics 2007-08-01 Sergi Elizalde

Shuffling is the process of rearranging a sequence of elements into a random order such that any permutation occurs with equal probability. It is an important building block in a plethora of techniques used in virtually all scientific…

Data Structures and Algorithms · Computer Science 2023-02-08 Manuel Penschuck

We give an algorithm to enumerate the results on trees of monadic second-order (MSO) queries represented by nondeterministic tree automata. After linear time preprocessing (in the input tree), we can enumerate answers with linear delay (in…

Databases · Computer Science 2019-08-28 Antoine Amarilli , Pierre Bourhis , Stefan Mengel , Matthias Niewerth

Inspired by [4] we present a new algorithm for uniformly random generation of ordered trees in which all occuring outdegrees can be specified by a given sequence of numbers. The method can be used for random generation of binary or n-ary…

Discrete Mathematics · Computer Science 2021-12-30 Aleksander Kiryk

We suggest a new non-recursive algorithm for constructing a binary search tree given an array of numbers. The algorithm has $O(N)$ time and $O(1)$ memory complexity if the given array of $N$ numbers is sorted. The resulting tree is of…

Data Structures and Algorithms · Computer Science 2022-07-20 Pavel S. Ruzankin

This article introduces an algorithm, MergeShuffle, which is an extremely efficient algorithm to generate random permutations (or to randomly permute an existing array). It is easy to implement, runs in $n\log_2 n + O(1)$ time, is in-place,…

Data Structures and Algorithms · Computer Science 2015-08-14 Axel Bacher , Olivier Bodini , Alexandros Hollender , Jérémie Lumbroso

A superpermutation is a sequence that contains every permutation of $n$ distinct symbols as a contiguous substring. For instance, a valid example for three symbols is a sequence that contains all six permutations. This paper introduces a…

Discrete Mathematics · Computer Science 2025-05-19 Dhruv Ajmera

Algorithms to generate various combinatorial structures find tremendous importance in computer science. In this paper, we begin by reviewing an algorithm proposed by Rohl that generates all unique permutations of a list of elements which…

Data Structures and Algorithms · Computer Science 2010-10-01 Pramod Ganapathi , Rama B

In this paper, we introduce a new way of constructing and decoding multipermutation codes. Multipermutations are permutations of a multiset that may consist of duplicate entries. We first introduce a new class of matrices called…

Information Theory · Computer Science 2014-09-29 Xishuo Liu , Stark C. Draper

The proliferation of number of processing elements (PEs) in parallel computer systems, along with the use of more extensive parallelization of algorithms causes the interprocessor communications dominate VLSI chip space. This paper proposes…

Data Structures and Algorithms · Computer Science 2020-11-24 Taeyoung An , A. Yavuz Oruc
‹ Prev 1 2 3 10 Next ›