Data Structures and Algorithms with Object-Oriented Design Patterns in C#
next up previous contents index

Basic Operations

Program gif defines the constructor for the MultisetAsArray class as well as the three basic operations--Insert, IsMember, and Withdraw. The constructor takes a single argument, tex2html_wrap_inline66461, and initializes an array of length N counters all to zero. The running time of the constructor is O(N).

   program27917
Program: MultisetAsArray class constructor, Insert, Withdraw, and IsMember methods.

To insert an item, we simply increase the appropriate counter; to delete an item, we decrease the counter; and to test whether an item is in the set, we test whether the corresponding counter is greater than zero. In all cases the operation can be done in constant time.


next up previous contents index

Bruno Copyright © 2001 by Bruno R. Preiss, P.Eng. All rights reserved.