Trees and Graphs: Basics (Coursera)

Trees and Graphs: Basics (Coursera)

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. Trees and Graphs: Basics can be taken for academic credit as part of CU Boulder’s Master of Science in Data Science (MS-DS) degree offered on the Coursera platform. The MS-DS is an interdisciplinary degree that brings together faculty from CU Boulder’s departments of Applied Mathematics, Computer Science, Information Science, and others.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

With performance-based admissions and no application process, the MS-DS is ideal for individuals with a broad range of undergraduate education and/or professional experience in computer science, information science, mathematics, and statistics.
Course 2 of 3 in the Data Structures and Algorithms Specialization.

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

Syllabus

WEEK 1
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.

WEEK 2
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.

WEEK 3
Union-Find Data Structures and Spanning Tree Algorithms
Union Find Data-structure with rank compression.
Spanning trees and properties of spanning trees. Prim’s algorithm for finding minimal spanning trees. Kruskal’s algorithm for finding minimal spanning trees.

WEEK 4
Shortest Path Algorithms
In this module, you will learn about:
Shortest Path Problem: Basics. Bellman-Ford Algorithm for single source shortest path. Dijkstra’s algorithm. Algorithms for all-pairs shortest path problem (Floyd-Warshall Algorithm)

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Programming for Everybody (Getting Started with Python) (Coursera) Coursera
University of Michigan

Programming for Everybody (Getting Started with Python) (Coursera)

This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. The course has no pre-requisites and avoids all but the simplest mathematics. Anyone with moderate computer experience should be able to master the materials in this course.

Sep 7th 2026
5-12 Weeks
Llama for Python Programmers (Coursera) Coursera
University of Michigan

Llama for Python Programmers (Coursera)

Llama for Python Programmers is designed for programmers who want to leverage the Llama 2 large language model (LLM) and take advantage of the generative artificial intelligence (AI) revolution. In this course, you’ll learn how open-source LLMs can run on self-hosted hardware, made possible through techniques such as quantization by using the llama.cpp package.

Sep 14th 2026
3 Weeks
Applied Text Mining in Python (Coursera) Coursera
University of Michigan

Applied Text Mining in Python (Coursera)

This course will introduce the learner to text mining and text manipulation basics. The course begins with an understanding of how text is handled by python, the structure of text both to the machine and to humans, and an overview of the nltk framework for manipulating text. The second week focuses on common manipulation needs, including regular expressions (searching for text), cleaning text, and preparing text for use by machine learning processes. The third week will apply basic natural language processing methods to text, and demonstrate how text classification is accomplished. The final week will explore more advanced methods for detecting the topics in documents and grouping them by similarity (topic modelling).

Sep 14th 2026
4 Weeks
Data Science in Stratified Healthcare and Precision Medicine (Coursera) Coursera
University of Edinburgh

Data Science in Stratified Healthcare and Precision Medicine (Coursera)

An increasing volume of data is becoming available in biomedicine and healthcare, from genomic data, to electronic patient records and data collected by wearable devices. Recent advances in data science are transforming the life sciences, leading to precision medicine and stratified healthcare. In this course, you will learn about some of the different types of data and computational methods involved in stratified healthcare and precision medicine.

Sep 7th 2026
5-12 Weeks
Computers, Waves, Simulations: A Practical Introduction to Numerical Methods using Python (Coursera) Coursera
Ludwig-Maximilians-Universität München

Computers, Waves, Simulations: A Practical Introduction to Numerical Methods using Python (Coursera)

Interested in learning how to solve partial differential equations with numerical methods and how to turn them into python codes? This course provides you with a basic introduction how to apply methods like the finite-difference method, the pseudospectral method, the linear and spectral element method to the 1D (or 2D) scalar wave equation.

Sep 7th 2026
5-12 Weeks
Audio Signal Processing for Music Applications (Coursera) Coursera
Stanford University,Universitat Pompeu Fabra

Audio Signal Processing for Music Applications (Coursera)

In this course you will learn about audio signal processing methodologies that are specific for music and of use in real applications. We focus on the spectral processing techniques of relevance for the description and transformation of sounds, developing the basic theoretical and practical knowledge with which to analyze, synthesize, transform and describe audio signals in the context of music applications.

Sep 14th 2026
5-12 Weeks
Algorithms, Part II (Coursera) Coursera
Princeton University

Algorithms, Part II (Coursera)

This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms.

Sep 14th 2026
5-12 Weeks
Introduction to PySpark (Coursera) Coursera
Edureka

Introduction to PySpark (Coursera)

Welcome to Introduction to PySpark, a short course strategically crafted to empower you with the skills needed to assess the concepts of Big Data Management and efficiently perform data analysis using PySpark. Throughout this short course, you will acquire the expertise to perform data processing with PySpark, enabling you to efficiently handle large-scale datasets, conduct advanced analytics, and derive valuable insights from diverse data sources.

Sep 14th 2026
1 Week
Uso de bases de datos con Python (Coursera) Coursera
University of Michigan

Uso de bases de datos con Python (Coursera)

Este curso presentará a los estudiantes los conceptos básicos del lenguaje de consulta estructurado (Structured Query Language, SQL), así como el diseño básico de bases de datos para almacenar datos como parte de una iniciativa de varios pasos para recopilar, analizar y procesar datos. El curso utilizará SQLite3 como base de datos. También crearemos rastreadores web y procesos de visualización y recopilación de datos de varios pasos. Utilizaremos la biblioteca D3.js para realizar la visualización básica de datos.

Sep 14th 2026
5-12 Weeks
Applied Plotting, Charting & Data Representation in Python (Coursera) Coursera
University of Michigan

Applied Plotting, Charting & Data Representation in Python (Coursera)

This course will introduce the learner to information visualization basics, with a focus on reporting and charting using the matplotlib library. The course will start with a design and information literacy perspective, touching on what makes a good and bad visualization, and what statistical measures translate into in terms of visualizations. The second week will focus on the technology used to make visualizations in python, matplotlib, and introduce users to best practices when creating basic charts and how to realize design decisions in the framework.

Sep 7th 2026
4 Weeks