Course

Unordered Data Structures

University of Illinois at Urbana-Champaign

The Unordered Data Structures course offered by the University of Illinois at Urbana-Champaign covers the essential data structures and algorithms required for implementing hash tables, disjoint sets, and graphs.

Throughout the course, you will delve into the intricacies of hash tables, which provide immediate access to data indexed by arbitrary key values. You will learn about collision handling techniques such as separate chaining and probing, as well as hashing analysis and the implementation of hash tables in C++.

Additionally, the course delves into the concept of disjoint sets, covering its introduction, naive implementation, UpTrees, and smart union with path compression. You will also gain a solid understanding of graph data structures, including vocabulary, edge list, adjacency matrix, and adjacency list implementation.

Furthermore, the course explores various graph algorithms, such as breadth-first search (BFS) traversal, depth-first search (DFS) traversal, minimum spanning trees (MST) with algorithms like Kruskal's and Prim's, and Dijkstra's algorithm for finding the shortest route between nodes. The course also addresses edge cases and running time considerations for Dijkstra's algorithm and the landmark path problem.

Certificate Available ✔

Get Started / More Info
Unordered Data Structures
Course Modules

The Unordered Data Structures course modules cover fundamental concepts such as hashing, disjoint sets, graph data structures, and graph algorithms. Gain in-depth knowledge and practical skills in implementing and analyzing these critical data structures and algorithms.

Orientation; Hashing

The Unordered Data Structures course begins with an orientation to hashing, introducing the concept and its relevance. You will delve into hash functions, collision handling techniques such as separate chaining and probing, and the analysis of hash tables. Additionally, you will explore the implementation of hash tables in C++ and complete quizzes and challenges to reinforce your learning.

Disjoint Sets

The Disjoint Sets module covers the fundamentals of disjoint sets, including their introduction, naive implementation, and UpTrees with smart union and path compression. You will also gain a clear understanding of terminology and complete quizzes and challenge problems to apply your knowledge.

Graph Data Structures

The Graph Data Structures module introduces you to the vocabulary and various implementations of graph data structures, including edge list, adjacency matrix, and adjacency list. You will also receive an overview of the week's content and complete quizzes and challenge problems to enhance your understanding.

Graph Algorithms

The Graph Algorithms module delves into essential graph algorithms such as breadth-first search (BFS) traversal, depth-first search (DFS) traversal, and minimum spanning trees (MST) using Kruskal's and Prim's algorithms. Additionally, you will explore Dijkstra's algorithm and its running time, along with the landmark path problem. Quizzes and challenge problems will reinforce your learning.

More Software Development Courses

Data Engineer, Big Data and ML on Google Cloud en Français

Google Cloud

Cette formation de spécialisation en ligne de cinq semaines explore la conception de systèmes de traitement des données sur Google Cloud, offrant une expérience...

Algorithms, Data Collection, and Starting to Code

University of Colorado System

This course introduces computational thinking and beginning C programming. Explore algorithms, data collection, and STEM computations, and learn to develop C programs...

Digital Transformation with Google Cloud - Español

Google Cloud

En este curso introductorio de Google Cloud, explorarás la revolución de la tecnología de la nube y su impacto en la transformación digital de las empresas.

Learn Java and JavaFX by creating a Graphical Calculator

Coursera Project Network

Learn to create a graphical calculator using Java and JavaFX in just 1.5 hours.