Chevron Left
Back to Data Structures

Learner Reviews & Feedback for Data Structures by University of California San Diego

4,241 ratings
718 reviews

About the 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

May 23, 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!

Jul 9, 2020

I think the course content and assignments were great. A suggestion though, it will be more helpful if there are more and varied corner cases that would save time spent in thinking and making cases.

Filter by:

651 - 675 of 700 Reviews for Data Structures

By chaluvadi a

Jul 14, 2020



Jul 4, 2019


By 221910303021 G C

Jan 20, 2021


By Vanshika K

Nov 1, 2020


By Andrey T

Jun 10, 2016

[Slightly updated according to Michael's questions]

The course is fine, but comparing to the previous one - Algorithmic Toolbox - this one is weaker and with lesser quality.

Pros: the course contains some interesting data structures and valuable observations. The starter files for assignments are in place. Related books are given after each video session. All the tasks have automatic grader. There is a couple of interesting tasks to do.

Cons: the material is mostly lectures, and there is even a video where lecturer just reads the article from Wiki (Splay tree - has the same information with same lack of some proofs). Expected: add quizzes as it was in the first course. The course has less weeks - only 4 as comparing to 5 in AT. So various important data structures are not discussed. The course has less homework - 3 tasks each week as comparing to 5 in AT. And all 3 are usually just implementations of some basic algos seen in lectures.

I consider the course valuable due to a number of good videos and a couple of good tasks to do. But in general, this course has the area for improvement.

By Vlad

May 14, 2016

The structure of the class follows the regular academic model you'll find in college: lecture -> lecture -> lecture -> assignment... repeat. I don't think this model is suitable for online delivery. Without discussion and the ability to interrupt and ask questions, the lectures are at times a more frustrating than useful (especially with Coursera's user interface, which lacks quick rewind and is generally speaking rather poorly thought out).

For many of the topics, better videos exist online (try safari or pluralsight). As for the problems, they were the main source of learning, but were also at times a bit frustrating (the splay trees starter code was rather sad to look at). I find that hacker rank is probably better at delivering value (if you can forego the warm fuzzy feeling you get from getting a verified certificate, you'll probably be better served by practicing on hacker rank than from doing the problems in this course).

By Pancerny M

Mar 31, 2020

Great set of topics, really good programming challenges. Lectures are NOT very helpful, mostly reading pseudocode from slides which don't make it easy to grasp the concept. Mostly I had to use other resources to understand what the lecture is about. Also, I was hoping that programming tasks will be set up the same way as in the Algorithmic Toolbox course where I could import/submit automatically everything to Coursera. For this course, none of the exercises were available in Pycharm for Edu.

By Zhongyu K

May 26, 2016

The depth and explanation of theoretical concepts are better than the first course. I like the in depth discussion over various introduced data structures, for instance there are comparisons between naive implementations vs smarter implementations. However overall the topic is very theoretical, maybe add a little more connection of each introduced data structure with respect to its application would make the topic less dry and more motivating.

By Ashley F

Jan 22, 2018

During this course, my experience was that the lectures and course notes did not seem to equip me to answer the quiz questions. While I was able to complete the practical assignments fine, I found the quizzes to be much harder and in some cases I needed to guess my way past. This may simply reflect a difficulty on my part to properly learn the material. Thanks to the authors for an interesting course, regardless!

By Andrey U

Jun 13, 2016

Course content is ok, but some lectors are really boring in explaining mathematical details.

Tasks are pretty easy, and this is from algorithmic perspective, because from programming there are almost nothing to do.

And overall it feels that there are not so much info as for 5 weeks course. If it would cost lest, than it would be ok. But for 80$ I've expected more.

By Prashant S

Aug 4, 2018

I completed the course, and liked the choice of topics and problems very much - thank you for your efforts! For the next version, I'd recommend having more "intuition" videos. Sort of like Andrew Ng does in his introductory ML video. Overall, the course was vey useful in giving a strong foundation of the fundamentals. thank you!

By Atharva T

Jun 5, 2020

The course is great in theory while in practice they should provide solutions for the questions that we were unable to solve so as to help and benefit us in the future. Please consider this review and improve upon all other courses of this specialization.

By Maksadbek A

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 Ayush M

Mar 6, 2017

For a beginner like me its totally going over the head. I mean i get the logic but if you guys can please give more code...

I am learning data structures for the first time and it is bit difficult for me to grasp it all and write codes in a week...


Sep 11, 2020

The course was little bit boring because of some of the speakers. It was little hard to understand their accent and along with that grasp everything needed.

Also the programming challenges I found a little hard but tried to do the best to solve.


Aug 3, 2017

The last part of this course is unsatisfied. It seems that the teacher in the last part is not very responsible for this course and he obviously has a bad preparation for this course.

By 121910303051 V S T

Dec 8, 2020

Needed easier conceptual understanding considering an average student also please make the assignment questions more understanding rather than just submissions.

By Sivagopal M

Apr 21, 2020

You should provide option to download failed test cases, then we can further develop our solution by solving edge case and improve our skills.

By Mayur A 1

Apr 25, 2020

Some of the lectures were not explained in a good way. Like the lectures on Amortized analysis were not much effective, according to me.

By Pradeep B P

Apr 12, 2018

Course has a slow pace by the time it reaches hashing and the videos only reads out the formulas.


Aug 12, 2020

The programming exercises are not friendly at all for learners new to python and algorithms.

By Akshay P

Jun 1, 2020

Learned most of the part easily... had difficulties in some part. overall good course.

By Irwan

Jul 20, 2020

Daniel kane is terrible lecturer, used lots of vague terms

By Lavangna D

Jul 5, 2020

Basics not covered


Jan 21, 2021

Good course