Chevron Left
Back to Data Structures

Data Structures, University of California San Diego

4.7
1,709 ratings
293 reviews

About this Course

A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently. In this course, we consider the common data structures that are used in various computational problems. You will learn how these data structures are implemented in different programming languages and will practice implementing them in our programming assignments. This will help you to understand what is going on inside a particular built-in implementation of a data structure and what to expect from it. You will also learn typical use cases for these data structures. A few examples of questions that we are going to cover in this class are the following: 1. What is a good strategy of resizing a dynamic array? 2. How priority queues are implemented in C++, Java, and Python? 3. How to implement a hash table so that the amortized running time of all operations is O(1) on average? 4. What are good strategies to keep a binary tree balanced? You will also learn how services like Dropbox manage to upload some large files instantly and to save a lot of storage space!...

Top reviews

By TT

Apr 06, 2018

Data Structures was really interesting over all, also assignments are quite challenging. It's important to consult the external references & discussion forums if you want to get the best of it.

By VK

Jul 16, 2018

Amazing course.\n\nInteresting exercises help with learning and understanding of internal mechanisms basic data structures, how some of them work, the pros and cons of each.\n\nThanks!

Filter by:

280 Reviews

By Swastik Rath

Jan 17, 2019

Excellent course for those who want to be strong in algorithms

By Morozov Andrey

Jan 14, 2019

Cool course, that describes essential of main data structures and explains their characteristics, use cases and realization. Strongly recommended for software engineers!

By Ujjawal Kumar

Jan 14, 2019

Great.

By Divya Manepalli

Jan 13, 2019

would be nice if it was mandatory to solve all the problem of the advanced topics

By Vedant Pathak

Jan 10, 2019

Good combination of Theory and Application.

By Gudipudi Mourya

Jan 05, 2019

It is great oppurtunity for a student like me in remote areas.I thank Coursera for the quality education it has been providing.

By Pradyumn Agrawal

Jan 03, 2019

This course helped me clear a lot of doubts as well as it introduced me to many useful things with their implementation. I must say this course is one of the best courses available on Coursera. Thanks to great instructors who helped me a lot.

By Ashutosh Avinash Bhokare

Dec 29, 2018

It is an amazing course. I had real fun doing it. Thank you course developers!

By Sahidul Alam Choudhury

Dec 24, 2018

Less diagramatic explaination.....making it hard for some concepts to grab.....overall good

By Sanskar

Dec 14, 2018

I really enjoyed learning stacks, queues, hash, heap, trees etc in this course. the videos and slides are very practical and informative with large no. of figures which really helped me in understanding how a particular algorithm is working and how it is efficient. every quiz contains very good conceptual questions related to a particular topic. some of them are tricky . each question has its own flavor and it really helped me to clear my doubts. Completing an assignment is really a challenge and i felt good each time when i passed a particular assignment.