C++ Assignment project using Hashmap
$10-30 USD
Paid on delivery
A Hash Map is a data structure used to implement an associative array, meaning, a structure that can map keys to slots (or buckets). Algorithmically, a hash map is simply a list of lists (much like an array of arrays). For this part, you will be implementing a hash map that will later store large amounts of data (Twitter, Web or Flights). The mapping provided by the hash map will allow you to access data in a fast and efficient way.
Description:
Implement a class called HashMap with the following properties:
1. HashMap will contain attributes and methods to store and handle your data;
2. As attributes, HashMap should contain:
2.1. A long integer value with the number of slots in the hash map;
2.2. A double linked list of double linked lists;
3. As methods, HashMap should contain the following operations:
3.1. getSize(): A query that returns the number of slots in the hash map (note that no setSize() is needed because the number of slots should be automatically updated by the operations insert and delete below).
3.2. insert(s): A modifying operation that augments the hash map with an empty slot pointed to by s.
3.3. insert(s,x): A modifying operation that augments the slot s in the hash map with the element pointed to by x.
3.4. delete(s): A modifying operation that, given a pointer s to a slot in the hash map, removes the entire slot s from the hash map.
3.5. delete(s,x): A modifying operation that, given a pointer to s and a pointer x to an element in slot s in the hash map, removes x from slot s.
You have to build the HashMap class from scratch (i.e., no STL, etc) and compile your program on AWS.
Your hash map should be structured like in the picture in the link below:
[url removed, login to view]
Each box in the picture represents a node (or link) of the list and should be encoded as a class. Names (e.g., "data", "prev", etc) are attributes in each class. Arrows are pointers and represent the connections within the hash map (i.e., prev, next and head are pointers to nodes). An arrow pointing to ground represents the end of the list and is programmatically implemented as a pointer to NULL. "data" and "data_slot" are classes (or structures) that will store your data. For this part, "data_slot" should contain two attributes: one string and one long integer. "data" should contain two attributes of the type string. Note that the nodes of the hash map have similar internal structure, so you should design your hash map exploring what you learned about inheritance. Here, the base class should contain all attributes and methods that are common to all nodes. Each node should derive from the base class and add methods and attributes that are particular to it.
Note that this part only requires you to design and implement the classes in C++. No functional program is necessary (i.e., no main() function needed). Document everything you do as this part is going to be part of your final report.
Project ID: #5756279
About the project
Awarded to:
Hi! I am professional C/C++/C#/Java programmer. I can do this project with highest quality. Best Regards, Szymszteinsl
12 freelancers are bidding on average $37 for this job
Hi, I am C++ expert and interested in this project. Please communicate to discuss further. Thank you
Hi, Friend. I have enough experience in C/C++ programming. I also have deep understanding about HashMap. I think I can help you perfectly & asap. Thanks.
hello, sreddy. i am wjx823. i hope that you hire me again. i will let you satisfy with my skill. jixing.
hello .................................................................................................................................................
hi, i had implemented the same hashmap data structure with separate chaining once. so i can do this one easily for you..
Greetings! I'm interested to work on this project. I've started my freelancing career 10 minutes ago. I know it's must be hard to pick someone who really doesn't have any reviews or feedback. But I assure you that i wo More
i can do it..........................................................................................................................................
hi there, i'm a master's student in computer science. you can intrust this task to me and you won't regret it. good luck