Algorithms and Data Structures

Sorting Algorithms you own this product

This project is part of the liveProject series Algorithms and Data Structures in Python
intermediate Python • object-oriented programming
skills learned
define an abstract data type (ADT) • define a linked list • implement sorting algorithms • perform algorithmic time complexity analysis
Kyle Dewey
1 week · 8-10 hours per week · BEGINNER

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!


5, 10 or 20 seats+ for your team - learn more

Look inside

The real estate developer you’re working with wants a program that can non-interactively read, sort, and write out the sorted data to a new file. In this liveProject, you’ll create this new program using the csv, abc, and time libraries. But instead of relying on Python’s built-in lists, you’ll implement the program with your own custom lists and sorting routines—gaining hands-on experience working with commonly used data structures and algorithms, demystifying all the work Python does for us and impressing your client, all at once!

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

Manning author Kyle Dewey talks about his liveProject Series.

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.


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:

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

you will learn

In this liveProject, you’ll see the real-world impact of algorithmic time complexity on the performance of your code as you learn to implement and work with commonly used algorithms and data structures:

  • Define an abstract data type (ADT)
  • Define a linked list
  • Implement sorting algorithms
  • Perform algorithmic time complexity analysis


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.

choose your plan


only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • Sorting Algorithms project for free