Definition: (1) A division of a set into nonempty disjoint sets that completely cover the set. (2) To rearrange the elements of an array into two (or more) groups, typically, such that elements in the first group are less than a value and elements in the second group are greater.

Formal Definition: (1) A partition P of a set S is a set of subsets with the following properties:

Thanks to Julio A. Cartaya <>.

Generalization (I am a kind of ...)

Specialization (... is a kind of me.)
select and partition.

Aggregate parent (I am a part of or used in ...)
quicksort, Dutch national flag, American flag sort, dual-pivot quicksort.

See also set packing, subset, connected components.

Author: PEB


generating partitions (Fortran, Mathematica, Pascal, and C).
Go to the Dictionary of Algorithms and Data Structures home page.

If you have suggestions, corrections, or comments, please get in touch with Paul Black.

Entry modified 2 November 2020.
HTML page formatted Mon Nov 2 12:36:42 2020.

Cite this as:
Paul E. Black, "partition", in Dictionary of Algorithms and Data Structures [online], Paul E. Black, ed. 2 November 2020. (accessed TODAY) Available from: