Overview
Building fast and highly performant data science applications requires an intimate knowledge of how data can be organized in a computer and how to efficiently perform operations such as sorting, searching, and indexing.
This Foundations of Data Structures and Algorithms course offered by Coursera in partnership with University of Colorado Boulder is targeted towards learners who are broadly interested in programming applications that process large amounts of data (expertise in data science is not required), and are familiar with the basics of programming in python. You will learn about various data structures including arrays, hash-tables, heaps, trees and graphs along with algorithms including sorting, searching, traversal and shortest path algorithms.
This specialization can be taken for academic credit as part of CU Boulder’s MS in Data Science or MS in Computer Science degrees offered on the Coursera platform. These fully accredited graduate degrees offer targeted courses, short 8-week sessions, and pay-as-you-go tuition. Admission is based on performance in three preliminary courses, not academic history. CU degrees on Coursera are ideal for recent graduates or working professionals.
Applied Learning Project
Learners will solve data-structure problems by analyzing and designing algorithms for searching, sorting, and indexing; creating trees and graphs; and addressing intractability. Courses also include conceptual algorithm design problems as well as opportunities to program data-structures/algorithms in the python programming language.
What You Will Learn:
- Organize, store and process data efficiently using sophisticated data structures and algorithms
- Create applications that are supported by highly efficient algorithms and data structures for the task at hand
- Design algorithms and analyze their complexity in terms of running time and space usage
Skills You Will Learn:
- Travelling Salesman Problem (TSP)
- Integer Programming
- Approximation Algorithm
- Linear Programming (LP)
- Algorithm Design
- Python Programming
- Data Structure Design
- Hashtables
- Analysis of Algorithms
- Graphs Algorithms
- Intractability
- RSA (Cryptosystem)
- Quantum Algorithms
- Public Key Cryptography
Get more details
Visit programme websiteProgramme Structure
Courses include:
- Algorithms for Searching, Sorting, and Indexing
- Trees and Graphs: Basics
- Dynamic Programming, Greedy Algorithms
- Approximation Algorithms and Linear Programming
- Advanced Data Structures, RSA and Quantum Algorithms
Check out the full curriculum
Visit programme websiteKey information
Duration
- Part-time
- 6 months
- Flexible
Start dates & application deadlines
Language
Delivered
Disciplines
Computer Sciences View 736 other Short Courses in Computer Sciences in United StatesExplore more key information
Visit programme websiteAcademic requirements
We are not aware of any specific GRE, GMAT or GPA grading score requirements for this programme.
English requirements
We are not aware of any English requirements for this programme.
Other requirements
General requirements
Advanced level
- Recommended experience: Calculus: derivatives and integrals. Probability theory: distributions, expectations, and moments. Some programming experience with Python
Make sure you meet all requirements
Visit programme websiteTuition Fee
-
International
FreeTuition FeeBased on the tuition of 0 USD for the full programme during 6 months. -
National
FreeTuition FeeBased on the tuition of 0 USD for the full programme during 6 months.
You can choose from hundreds of free courses, or get a degree or certificate at a breakthrough price. You can now select Coursera Plus, an annual subscription that provides unlimited access.
Funding
Coursera provides financial aid to learners who cannot afford the fee. Apply for it by clicking on the Financial Aid link beneath the "Enroll" button on the left. You'll be prompted to complete an application and will be notified if you are approved. You'll need to complete this step for each course in the Specialization, including the Capstone Project.