Basic algorithms on tree data structures, binary search trees, self-balancing trees, graph data structures and basic traversal algorithms on graphs. This course also covers advanced topics such as kd-trees for spatial data and algorithms for spatial data.
This course is part of the Data Science Foundations: Data Structures and Algorithms Specialization
Offered By
About this Course
Completion of the previous course. Calculus, probability theory: distributions, expectations and moments. Some programming experience with Python.
What you will learn
Define basic tree data structures and identify algorithmic functions associated with them
Execute traversals and create graphs within a binary search tree structure
Describe strongly connected components in graphs
Skills you will gain
- Analysis of Algorithms
- Algorithm Design
- Python Programming
- Data Structure Design
- Graphs Algorithms
Completion of the previous course. Calculus, probability theory: distributions, expectations and moments. Some programming experience with Python.
Offered by

University of Colorado Boulder
CU-Boulder is a dynamic community of scholars and learners on one of the most spectacular college campuses in the country. As one of 34 U.S. public institutions in the prestigious Association of American Universities (AAU), we have a proud tradition of academic excellence, with five Nobel laureates and more than 50 members of prestigious academic academies.
Start working towards your Master's degree
Syllabus - What you will learn from this course
Binary Search Trees and Algorithms on Trees
In this module, you will learn about binary search trees and basic algorithms on binary search trees. We will also become familiar with the problem of balancing in binary search trees and study some solutions for balanced binary search trees such as Red-Black Trees.
Basics of Graphs and Graphs Traversals
In this module, you will learn about graphs and various basic algorithms on graphs such as depth first/breadth first traversals, finding strongly connected components, and topological sorting.
Union-Find Data Structures and Spanning Tree Algorithms
Union Find Data-structure with rank compression.
Shortest Path Algorithms
In this module, you will learn about:
Reviews
- 5 stars79.41%
- 4 stars20.58%
TOP REVIEWS FROM TREES AND GRAPHS: BASICS
very solid course - would love more programming assignments and tougher final
I have grade 100% My mail id- freespace644@gmail.com
Great lecturer and course materials. Assignments were fun also
About the Data Science Foundations: Data Structures and Algorithms Specialization
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 course will teach the fundamentals of data structures and algorithms with a focus on data science applications. This specialization 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. We 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.

Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
More questions? Visit the Learner Help Center.