Program defines the constructor for the MultisetAsArray class as well as the three basic operations--Insert, IsMember, and Withdraw. The constructor takes a single argument, , and initializes an array of length N counters all to zero. The running time of the constructor is O(N).
Program: MultisetAsArray Class Constructor, Insert, Withdraw and IsMember Member Function Definitions
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.