Sets and bags, Computer Engineering

Assignment Help:

Task: Sets and bags

In mathematics, the notion of multiset (or bag) is a generalisation of the notion of set.

A bag is a special kind of container in which the items may be repetitive, and without any order. A set is a container in which items may NOT be repetitive (each element in a set is unique).

Our purpose in this assignment is to implement the set and bag concept by using an array-based list structure.

The program

This assignment will be implemented by the use of 2 interfaces named:
1. SetList
2. BagList

The SetList interface will contain the following method headers: 

Sets

The implementation of the SetListType has to take into account the fact that repeat values are not stored. The only requirement as far as this assignment is concerned, is that you use an array-based list structure to implement both sets and bags.

Bags

The implementation of the BagListType has to take into account the fact that repeat values are stored. For the purposes of this assignment , we will employ a dual array technique so as to eliminate having to physically store a value (object) we have already put into our bag structure. One array will store the object, the second array will store the number of times this object is present in our bag structure (i.e., the second array is of type  int)For example, for an input of Integers of the following values:

1 2 3 4 5 3 2

These values would normally be stored in a single array as shown below.

1021_Sets and bags.png


Related Discussions:- Sets and bags

Give the example of spreadsheet, Give the example of Spreadsheet By sel...

Give the example of Spreadsheet By selecting cell C1 and dragging the formula down to C5 the below formulae will be replicated in C2 to C5: (A2*B2), (A3*B3), (A4*B4) and (A5*B5

What is fork, What is Fork Clk gets its value after 1 time unit, rese...

What is Fork Clk gets its value after 1 time unit, reset after 10 time units, enable after 5 time units, data after 3 time units. All the statements are executed in parallel.

what respects the advance builds, Describe your choice specifically and fu...

Describe your choice specifically and fully, explaining and discussing at length in what respects the advance builds upon or departs from present technology or practice and the sev

What is hamiltonian path, What is Hamiltonian path?  A Hamiltonian path...

What is Hamiltonian path?  A Hamiltonian path in a directed graph G is a directed path that goes through every node exactly once. We consider a special case of this problem whe

Differences b/w user level and kernel supported threads, What are the diffe...

What are the differences between user level threads and kernel supported threads? A thread, sometimes termed a lightweight process (LWP), is a fundamental unit of CPU utilizati

What is sap locking, What is SAP locking? It is a mechanism for describ...

What is SAP locking? It is a mechanism for describing and applying logical locks to database objects.

Find the width of a time division space switch, I n a time division space s...

I n a time division space switch the size of the control memory is N and its Width:  (A) Log 10 M  (B) Log e M  (C) Log N M  (D) Log 2 M Where N are the ou

Explain a binary semaphore, Explain a binary semaphore with the help of an ...

Explain a binary semaphore with the help of an example? An abstract data type (ADT) is a semaphore which defines a nonnegative integer variable that apart from initialization i

Identify specific weaknesses in the design, Identify three specific weaknes...

Identify three specific weaknesses in the design of the websites, derived from your analyses within Questions Part (c) and/or Question Part (a). There should be at least one weakne

C++, pebble merchant

pebble merchant

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd