Algorithms and Data Structures

Hash Tables and Unit Tests you own this product

This project is part of the liveProject series Algorithms and Data Structures in Python
prerequisites
intermediate Python
skills learned
write code manipulating Python dictionaries • write unit tests involving dictionaries • cover a variety of testing scenarios • implement a basic hashmap from scratch • use your hashmap to eliminate duplicate entries
Kyle Dewey
1 week · 6-8 hours per week · BEGINNER

placing your order...

Don't refresh or navigate away from the page.
liveProject This project is part of the liveProject series Algorithms and Data Structures in Python liveProjects give you the opportunity to learn new skills by completing real-world challenges in your local development environment. Solve practical problems, write working code, and analyze real data—with liveProject, you learn by doing. These self-paced projects also come with full liveBook access to select books for 90 days plus permanent access to other select Manning products. $19.99 $29.99 you save $10 (33%)
Hash Tables and Unit Tests (liveProject) added to cart
continue shopping
go to cart

Look inside

Your real estate developer client has a large sorted dataset and the ability to zoom in on select parts of the data, thanks to the programs you’ve written for them previously. Now they’ve noticed duplicate entries in the dataset, and they’ve asked you to solve this problem. In this liveProject, you’ll create a program that will read in the large CSV data file, leveraging a hash map (which you’ll test and implement) in order to discard duplicate entries as quickly as possible. Though you’ll use the csv and unittest libraries in Python, you’ll write your own unit tests—a fundamental software engineering skill and a practical requirement on most real-world projects. Finally you’ll test your tests against Python’s existing dictionaries.

This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Kyle Dewey
Kyle Dewey received his Ph.D. in computer science from UC Santa Barbara and has been an assistant professor in Cal State Northridge's computer science department since 2017. He has a dozen scientific publications spanning programming language design, compilers, automated software testing, and computer science education, and has presented his work at top conferences in the field. Kyle has formally taught courses covering programming skills at all levels, including courses specifically related to the algorithms and data structures seen in this liveProject.

prerequisites

The liveProject is for people with basic familiarity with Python and programming, comparable to a single introductory course at the college level. To begin these liveProjects you will need to be familiar with the following:


TOOLS
  • Intermediate Python
TECHNIQUES
  • Object-oriented programming (defining classes and methods, using inheritance, creating objects)

you will learn

In this liveProject, you’ll learn how hash tables work and why they are so efficient, and you’ll gain hands-on skills implementing hash tables and unit tests.


  • Write code manipulating Python dictionaries
  • Write unit tests involving dictionaries, covering a variety of testing scenarios
  • Implement a basic hashmap from scratch
  • Use your hashmap to eliminate rows in a dataset which have duplicate description fields with other rows

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.
RECENTLY VIEWED