Chevron Left
Back to Data Structures

Data Structures, University of California San Diego

4.7
1,636 ratings
281 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 DG

May 24, 2016

I like this course very much! Rope is the cleverest task I have ever done! Of course, I hope in future I will work on even more difficult problems, but this is pretty good already for me as a student!

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.

Filter by:

270 Reviews

By Yuchen Lu

Dec 12, 2018

It's a real good course! I have acquired so much essential knowledge about data structure and programming.

By Adel Fazel

Dec 11, 2018

Lots of fun problems to solve. To get the most of this course, solve every single problem. Good content, not enough sample problem on tree.

By Alexander Riley

Dec 11, 2018

second course is just as good as first..

By Maksadbek Akhmedov

Nov 25, 2018

Some lectures give very limited information to understand the topic. Therefore I had to watch other lectures on YouTube. Hashtables topic have much more lectures(5 hours) for 1 week. But Binary Search Trees are splitted into 2 weeks with the same hours.

By Kalin Dimitrov Dimitrov

Nov 22, 2018

More exercise will be better. It will be good you mention red-black tree segment and interval trees B and B+ trees

By Damian Sobański

Nov 08, 2018

Some algorithms validations do not work properly :/

By Narendra Shekhawat

Nov 01, 2018

Even though I am already aware of all these data structures, I gained some more in-depth knowledge about them, also got introduced to splay trees. definitely worth a try,some of the assignments are really good.

By Torgashov Nikita

Oct 21, 2018

Difficult topics are explained in a very simple and clear way. Exciting assignments.

By Andrey Koleshko

Oct 19, 2018

Interesting and hard (but possible to solve) challenges. All necessary information to solve a problem can be found in the lectures. The theoretical part is minimal but enough to start solve advanced problems. That's why I love this course more than others ever!

By 徐理

Oct 19, 2018

good course! I've got a lot from it.