Ask DBMS Expert


Home >> DBMS

Assignment

1. The main goal of this assignment is to create and exercise a hash table of college students. The key is the student ID (an object of the ID class) and the value is an object of the Student class.

2. Use the following classes: Student, ID, StudentTable, Application

3. The ID object represents a pair of two 10-digit integers, each integer will be randomly selected between 0 and 2,000,000,000. The reason for the random selection is that we will have to issue IDs for a large number of students (up to 1,000,000) and using a pair of 10 digit numbers allow us reasonably assume that different students will have different IDs.

4. The ID class has two instance fields to store the first and the second element of the pair. The no-arg constructor randomly initializes the fields. The class has an equals( ) method to compare ID objects for equality of their respective fields.

5. The Student class has two instance fields for a name and an ID of the Student object. The constructor takes a String parameter to initialize name, and calls the ID class constructor to initialize the ID field. The Student class must have an equals( ) method as well, such that Student objects can be compared.

6. The StudentTable class implements a hash table as described in your reading (see pp 584 - 594). The elements are Student objects, the keys are ID objects.

7. Note that the put( ) method you have in this project shall take only an ‘element' for parameter, no ‘key'. When a Student object is instantiated it gets its key as its ID field. Thus you can retrieve the key by using an accessor method.

8. The StudentTable constructor takes a parameter for the size of the table, and instantiates all the three array fields (keys, data, hasBeenUsed) to that size.

9. The Application class tests and drives your program.

10. In the main method instantiate a StudentTable with size 30000. Use open address hashing to populate the arrays with 15000 students (load factor ½).

11. For measuring the performance of linear probing add a fourth array to your table class named experiment. The length is the table length but it is not part of the data structure. Set up a counter variable such that every time a new Student is added to the table, the counter keeps track of the number of iterations the while loop has to make in the put method. When the search is done, store the counting result in the next entry of the experiment array. After the loading procedure compute the average of the array elements. Repeat the entire loading procedure this time to reach load factor 0.85. Compare the averages and comment on your experience. Note: you do not really need the extra array experiment. You may accumulate the sum total of the probing in a single variable, and compute the average at the end. Moreover, you can compute the average on the run, updating average at every call of put.

12. You will need names supplied to the constructor, therefore you need a name generator method in the Application class. Add the method randomName( ) to the class. The method takes an int parameter for the length of the names (use 7). Every call of the method produces a random name such that the first character is a capital letter randomly chosen, the other characters are alternately random vowels and random consonants. A short sample list of 49 such names are shown below:

Yupoyes, Rijaboq, Hipocun, Quvaxim, Uopexod, Facujeq, Vohiyip, Lipeyib, Bezolul, Cefukon, Cemapen, Risisay, Dijewuk, Bepetoz, Kojimoy, Eaxikar, Xihahef, Uimojuq, Metuver, Hepejah, Yawihuk, Xocasal, Bulekiw, Eejuvas, Fapasaj, Gulobok, Uupinof, Fajonum Vuyinor, Lopoyas, Qotiqab, Reduder, Iixelup, Hemepuk, Penilir Piyivaw, Uajaqub, Xugoruq, Yirediy, Zudakup, Xavamow, Ramedaz Aeriwov, Huqurer, Wifaguf, Qahuloj, Jojewiy, Qomanev, Iipunap

13. In the testing phase check if the ID numbers are created correct.

14. To display the table, find the first 50 non-null Students in the table and print their names and the corresponding array indexes to the console. 15. As non-mandatory experiments you may want to try and test other hash method(s) and larger tables with larger load factors, as well.

DBMS, Programming

  • Category:- DBMS
  • Reference No.:- M92554700
  • Price:- $45

Priced at Now at $45, Verified Solution

Have any Question?


Related Questions in DBMS

Data mining assignment -in this assignment you are asked to

Data Mining Assignment - In this assignment you are asked to explore the use of neural networks for classification and numeric prediction. You are also asked to carry out a data mining investigation on a real-world data ...

Sql query assignment -for this assignment you are to write

SQL Query Assignment - For this assignment you are to write your answers in a word document. This assignment is in three parts: Part A (reporting queries), Part B (query performance), Part C (query design). For this assi ...

The groceries datasetimagine 10000 receipts sitting on your

The groceries Dataset Imagine 10000 receipts sitting on your table. Each receipt represents a transaction with items that were purchased. The receipt is a representation of stuff that went into a customer's basket. That ...

You are in a real estate business renting apartments to

You are in a real estate business renting apartments to customers. Your job is to define an appropriate schema using SQL DDL in MySQL. The relations are Property(Id, Address, NumberOfUnits), Unit(ApartmentNumber, Propert ...

Objectivethe objective of this lab is to be familiar with a

OBJECTIVE: The objective of this lab is to be familiar with a process in big data modeling. You're required to produce three big data models using the MS PowerPoint software. This tool is available on UMUC Virtual Deskto ...

The relation memberstudentid organizationid roleid stores

The relation Member(StudentId, OrganizationId, RoleId) stores the membership information of student joining organization. For example, ('S1', 'O2', 'R3') indicates that student with Id 'S1' joined the organization with i ...

Relational database exerciseyou have been assigned to a new

Relational Database Exercise: You have been assigned to a new development team. A client is requesting a relational database system to manage their present store with the anticipation of adding more stores in the future. ...

Relational database design a given the following business

Relational Database Design A) Given the following business rules, identify entity types, attributes (at least two attributes for each entity, including the primary key) and relationships, and then draw an Entity-Relation ...

We can represent a data set as a collection of object nodes

We can represent a data set as a collection of object nodes and a collection of attribute nodes, where there is a link between each object and each attribute, and where the weight of that link is the value of the object ...

Data model development and implementationpurpose of the

Data model development and implementation Purpose of the assessment (with ULO Mapping) The purpose of this assignment is to develop data models and map Database System into a standard development environment to gain unde ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As