2-3+ tree project

As part of a memory management package for storing variable-length records in a large memory space, in this project we will build some necessary data structures for doing search and analysis on a large song database. The records that you will store for this project are artist names and song track names from a subset of the Million Song database.

To store data for the song records, we will simplify the memory management. You should create a large array of bytes to store all songs and artist names. The artist names and song titles will be stored separately. For each record, the first byte (called flag) will be a sign to mark whether the data is active (0 means deleted and 1 means active). The next two bytes will be the (unsigned) length of the record, in (encoded) characters. Thus, the total length of a record may not be more than 216=65536 characters or bytes. Following that will be the string itself. Access to all records will be controlled by “handles”. For each handle, it contains the start location (within the array) of the record.

To simplify the implementation, for insertion, append the new record to the last record of your array and mark it as active; For deletion, mark the corresponding data as deleted, but you don’t have to physically remove the record from the array. Whenever the array size is not enough, you will create a new array with larger size and copy the old data to the new array. Access to the song records will be through several index files: two closed hash tables for accessing artist names and accessing song titles, and two 2-3+ trees for range query (B+ tree with order of 3, you need to use 2-3+ tree other than other ADT).

For the hash tables, you will use the second string hash function described in the book, (the hash function will be provided by your instructors), and you will use simple quadratic probing for your collision resolution method (the i'th probe step will be i2 slots from the home slot). The key difference from what the book describes is that your hash tables must be extensible. That is, you will start with a hash table of a certain size, (defined when the program starts). If the hash table exceeds 50% full, then you will replace the array with another that is twice the size, and rehash all of the records from the old array. For example, say that the hash table has 100 slots. Inserting 50 records is OK. When you try to insert the 51st record, you would first re-hash all of the original 50 records into a table of 200 slots. Likewise, if the hash table started with 101 slots, you would also double it (to 202) just before inserting the 51st record. The hash tables will actually store “handles” to the relevant data records that are currently stored in the memory. This handle is used to recover the record. For this project, it will be just the index of the data in the array.

Skills: Java

See more: SENIOR Laravel 5 developer (2-3 weeks project, maybe more), sabre script - 08/06/2017 03:13 EDT, I would like to hire a CSS Designer - 16/06/2017 00:45 EDT, 2-3 tree pdf, 2-3 tree pseudocode, 2-3 tree geeksforgeeks, height of 2-3 tree, 2-3 tree deletion, 2-3 tree insertion code, 2-3 tree simulator, 2-3 tree java, java, I would like to hire a CSS Designer - 16/06/2017 00:48 EDT, Design a T-Shirt - 14/06/2017 18:13 EDT , Powerpoint help - 08/06/2017 16:39 EDT, Get Data Entry Done - 04/06/2017 02:56 EDT, Get a Website Built -03/06/2017 03:18 EDT, circuit board - 16/05/2017 00:13 EDT, Hire a Web Developer - 30/03/2017 13:59 EDT, english as second language

About the Employer:
( 1 review ) Burke, United States

Project ID: #17239072

9 freelancers are bidding on average $132 for this job

$150 USD in 2 days
(34 Reviews)

Feel fee to contact me for tree [login to view URL] me message to discuss further more details .We provide the commments,images,videos,demos and live sessions in order to help the [login to view URL] payment only after the work More

$130 USD in 3 days
(33 Reviews)

Hi, bro. Nice to meet you. I have read your request. I have a full of experiences with data structure and java programming. I have finished many projects like this. I am confident in your project and I can finis More

$155 USD in 3 days
(42 Reviews)

Hello... I am highly interested to do your project. I believe that, I can do this work properly and in timely by your instruction. We can again discuss about the budget according to your budget. Always determined More

$100 USD in 3 days
(15 Reviews)

Hello, I can help with you in your project 2-3+ tree project. I have more than 5 years of experience in Java. We have worked on several similar projects before! We have worked on 350+ Projects. Please check the p More

$250 USD in 3 days
(13 Reviews)

I fully read your description and very interested in your project. I have good experience in BigData technology which may help for your project. I'd like to discuss more about project with you. Thanks, Bing

$155 USD in 3 days
(0 Reviews)

Dear Project Owner, As I have gone through your requirements, I’m able to do this Job, we are a team of number resources having to 2-16 year of experience with all the tech stack. For more about us please visit www. More

$40 USD in 3 days
(0 Reviews)

I have up to 7 years of experience in Java. Please don't hesitate to ask me if you are interesting and provide me full details on the dB of the songs. Thanks and have a great day.

$111 USD in 5 days
(0 Reviews)

I have Skill-full knowlage of java and memory management using java, also i am worked on same kind of projects like search similar movies name entered by the user and second project of serch keyword in diffrent-diffren More

$100 USD in 5 days
(0 Reviews)