Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Kindly send me the complete code in c++ as Its my university project and i want help of an expert Suppose that NADRA hires you

Kindly send me the complete code in c++ as Its my university project and i want help of an expert
image text in transcribed
image text in transcribed
Suppose that NADRA hires you as an IT expent for advancing their ID-System. Your goal is to design a system that supports fast searchinginsertion'deletion. Array and Linked-list-based implementation led you to O(n) time complexity for searinginsertion/deletion in the worst case. AVL trees led to log(n), but balancing and high depth are the major concerns in this scenario. So, plan something else. Think before reading the solution. Hashing can be a solution, but collision is a problem that you have to deal with for the best performance. Task 1: Design a hash function that should perform best (nearly best, in terms of the number of collisions). Insert data into a hash table using the designed hash function. Task 2: To avoid collisions, implement the linear probing technique. Now, note the problem with deletion. To avoid deletion problems, implement a chaining method. Task-3: Implement linked-list-based chaining. Task-4: Implemen BST-based chaining. NOTE: Your system moot the able to porform insertionileletionisnarching in every cave (chaining probing). HINT for NADRA-ID-based hash function: Format: aaaaa-fmmin-g Get the first five numbers and get a key from your designed hash function. Similarly, get the next seven numbers and get a key from your designed hash fanction. Utilize the answers (keys) of both hash functions and apply another function/formula to get a single key. NOTE: It is not necessary to wise this technique, you can design your own may to get the key. DATA: Use randomly generated ID-card numbers for insertion and searching. Be carcful about the format of the ID card numbers. Compare the linear probing, linked-list chaining, and BST chaining. State the best method in terms of searching. State the reasons as well. For comparison, store 1000 randomly generated ID card numbers and search 100 randomly generated ID card numbers. You have to report the total and average number of collisions for the insertion of 1000 data elements. You are also required to tepont the average and total number of comparisons for searching 100 data elements. Note: Besides comparison, your system will atso display a proper mocnu for searching dedefion insernion of the user input 1D card mambers. Randomly genenated ID cand number insernian asd searching can only be used for comparison. So, make it clear. Comparison Data Get 3 different data arrays (of size 1000) and insert them into a hash table. Compare linear probing, linked list chaining, and BST chaining in terms of searching (search at least 100 times in each case). Data- 1:3,5,61,19,13,23,29,17,7,11 (all prime numbers ( 1000 numbers), should not be consecutive) Data-2: 25, 65,21,91,33,15,27,35,55 (all odd numbers (1000 numbers). should not be consecutive) Data-3: 70,50,60,90,100,32,50,40,12 (all even numbers (1000 numbers), should not be consecutive) a) Insert Data-1 using linear probing, linked-list chaining, and BST chaining. Search different randomly generated 100 numbers for each case, Show the average and the total number of searches that you perfomed for searching 100 numbers for every case. b) Insert Data-2 using linear probing, linked-list chaining, and BST chaining. Search different randomly generated 100 mumbers for each case. Show the average and the total number of searches that you performed for searching 100 numbers for every case. c) Insert Data-3 using linear probing, linked-list chaining, and BST chaining. Search different randomly generated 100 numbers for each case. Show the average and the total number of searches that you perfomed for searching 100 numbers for every case. Which technique is betser? State the reasons. Instructions: The hash function should be optimal in terms of the number of collisions. The number of collisions should be as minimum as possible. Moreover, the size of the hash table should be efficient in terms of space. You have limited resources only. For part 2, you are only required to generate 1000 random numbers for insertion and 100 numbers for searching. No menu is required in this part. No deletion or individual data insertion and searching is required. You have to count the total number of collisions and searching-comparison in this part. Hashing Rule: For size, avoid the powers of 2 and numbers close to the multiple of 10. Use the Prime number for the size of a hash table (Recommended). BONUS (up to 3 absolute marks): Implement an AVL chaining in part 2 only. The rest of the project will be the same. Add an AVL. chaining analysis as well (i.e., you have to compare the data (in terms of the total number of collisions and searches) on the basis of linked-list chaining, BST chaining, AVL chaining, and linear probing) Submission Instructions: Your submission folder (.zip format is allowed only) will contain three files (part-1 implementation, part-2 implementation, comparison analysis (number of searches for every technique, etc.))

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Repairing And Querying Databases Under Aggregate Constraints

Authors: Sergio Flesca ,Filippo Furfaro ,Francesco Parisi

2011th Edition

146141640X, 978-1461416401

More Books

Students also viewed these Databases questions

Question

Explain how cultural differences affect business communication.

Answered: 1 week ago

Question

List and explain the goals of business communication.

Answered: 1 week ago