Algorithms and Data Structures

Search Algorithms you own this product

This project is part of the liveProject series Algorithms and Data Structures in Python
prerequisites
intermediate Python • object-oriented programming
skills learned
design an ADT that abstracts over a dataset and implement it for sorted and unsorted Python lists as well as balanced and unbalanced binary search trees • implement a routine to search through the data • check the correctness of your code using provided unit tests
Kyle Dewey
1 week · 8-10 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%)
Search Algorithms (liveProject) added to cart
continue shopping
go to cart

Look inside

The real estate developer you’ve worked with previously is so pleased with your work that they’ve asked you to write a new program that allows them to zero in on specific data in sorted reports. Their ultimate goal is to determine what kinds of homes fall into different ranges of interest. Using Python, the csv library, and a custom ADT (that you’ll design), you’ll implement multiple distinct search algorithms as you create a program that allows your client to run many queries— and be fast and efficient, despite the large size of the dataset.

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 about binary search trees (BSTs) as well as the distinction between unbalanced and balanced BSTs, and you’ll see firsthand the impact that a data’s representation has on efficiently searching through it.


  • Design an ADT that abstracts over a dataset
  • Implement this ADT for sorted and unsorted Python lists, as well as balanced and unbalanced binary search trees
  • Implement a routine to search through the data
  • Use provided unit tests throughout the project to check the correctness of your code

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