A logarithmic implementation of flexible arrays

  • Rob R. Hoogerwoord
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 669)


In this paper we derive an implementation of so-called flexible arrays; a flexible array is an array whose size can be changed by adding or removing elements at either end. By representing flexible arrays by so-called Braun trees, we are able to implement all array operations with logarithmic — in the size of the array—time complexity.

Braun trees can be conveniently defined in a recursive way. Therefore, we use functional programming to derive (recursive) definitions for the functions representing the array operations. Subsequently, we use these definitions to derive (iterative) sequential implementations.


Functional Program Proof Obligation Sequential Implementation Composite Tree Node Sharing 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [0]
    Braun, W., Rem, M.: A logarithmic implementation of flexible arrays. Memorandum MR83/4, Eindhoven University of Technology (1983).Google Scholar
  2. [1]
    Dijkstra, Edsger W.: A discipline of programming. Prentice-Hall, Englewood Cliffs (1976).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Rob R. Hoogerwoord
    • 1
  1. 1.Department of Mathematics and Computing ScienceEindhoven University of TechnologyMB EindhovenThe Netherlands

Personalised recommendations