1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
@c Copyright (C) 1996, 1997, 1999, 2000, 2002, 2007, 2008, 2009 John W. Eaton
@c
@c This file is part of Octave.
@c
@c Octave is free software; you can redistribute it and/or modify it
@c under the terms of the GNU General Public License as published by the
@c Free Software Foundation; either version 3 of the License, or (at
@c your option) any later version.
@c
@c Octave is distributed in the hope that it will be useful, but WITHOUT
@c ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
@c FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
@c for more details.
@c
@c You should have received a copy of the GNU General Public License
@c along with Octave; see the file COPYING. If not, see
@c <http://www.gnu.org/licenses/>.
@node Sets
@chapter Sets
Octave has a limited number of functions for managing sets of data, where a
set is defined as a collection of unique elements. In Octave a set is
represented as a vector of numbers.
@DOCSTRING(unique)
@menu
* Set Operations::
@end menu
@node Set Operations
@section Set Operations
Octave supports the basic set operations. That is, Octave can compute
the union, intersection, complement, and difference of two sets.
Octave also supports the @emph{Exclusive Or} set operation, and
membership determination. The functions for set operations all work in
pretty much the same way. As an example, assume that @code{x} and
@code{y} contains two sets, then
@example
union(x, y)
@end example
@noindent
computes the union of the two sets.
@DOCSTRING(ismember)
@DOCSTRING(union)
@DOCSTRING(intersect)
@DOCSTRING(complement)
@DOCSTRING(setdiff)
@DOCSTRING(setxor)
|