31 research outputs found

    An In-Place Sorting with O(n log n) Comparisons and O(n) Moves

    Full text link
    We present the first in-place algorithm for sorting an array of size n that performs, in the worst case, at most O(n log n) element comparisons and O(n) element transports. This solves a long-standing open problem, stated explicitly, e.g., in [J.I. Munro and V. Raman, Sorting with minimum data movement, J. Algorithms, 13, 374-93, 1992], of whether there exists a sorting algorithm that matches the asymptotic lower bounds on all computational resources simultaneously

    Converting two-way nondeterministic unary automata into simpler automata

    Get PDF
    AbstractWe show that, on inputs of length exceeding 5n2, any n-state unary two-way nondeterministic finite automaton (2nfa) can be simulated by a (2n+2)-state quasi-sweeping 2nfa. Such a result, besides providing a “normal form” for 2nfa's, enables us to get a subexponential simulation of unary 2nfa's by two-way deterministic finite automata (2dfa's). In fact, we prove that any n-state unary 2nfa can be simulated by a sweeping 2dfa with O(n⌈log2(n+1)+3⌉) states

    Graph-Controlled Insertion-Deletion Systems

    Full text link
    In this article, we consider the operations of insertion and deletion working in a graph-controlled manner. We show that like in the case of context-free productions, the computational power is strictly increased when using a control graph: computational completeness can be obtained by systems with insertion or deletion rules involving at most two symbols in a contextual or in a context-free manner and with the control graph having only four nodes.Comment: In Proceedings DCFS 2010, arXiv:1008.127

    A representation of recursively enumerable languages by two homomorphisms and a quotient

    Get PDF
    AbstractA new representation for recursively enumerable languages is presented. It uses a pair of homomorphisms and the left (or right) quotient: For each recursively enumerable language L one can find homomorphisms h1, h2: ∑∗A → ∑∗B, such that w ∈ ∑∗L is a word in L if and only if w =h1(α)h2(α) for some α∈∑+A. (Or, each recursively enumerable language can be given by L = O(h1h2) ∩ ∑∗L, where O(h1h2) is the so-called right overflow languaged defined as O(h1h2) = {h1(x)h2(x); x ∈ ∑∗A}.

    A hierarchy that does not collapse : alternations in low level space

    No full text
    corecore