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!
Do you have technical problems? Write to us: coursera@hse.ru...

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.

Sep 19, 2019

The best data structures course that I have taken!\n\nThe complex topics are made simpler at the expense of teaching style that allowed me to make it applicable in a real world situations.

篩選依據：

創建者 Srinivas N

•Jun 09, 2016

Excellent Course

創建者 Alexander

•Sep 08, 2016

I liked this course alot.

If you are a student and come from the previous course, you may only read the cons, since this course has the same spirit as the previous.

Pros:

1. The lectures contain quite a good material which is somehow difficult and they made me to pay attention. The lectures are based on dasgupta's book and MIT course book.

2. There are links to additional materials, I found the dijkstra's book and MIT course book, so I was able to gain extra information for topics which interested me.

Also slides are very useful

3. The forum! This course has a life forum where you can find help or share your ideas.

4. The teaching stuff! They are answering student questions and taking part in discussions

Cons:

Having compared this course with the previous one from the set, this course suffers from luck of interesting problems. The previous course has more than ~25 problems and for each module it has advanced problems,even more they added extra problems during the course running.

This course has ~12 problems and only one advanced for the whole course!. Only this advanced problem made me take a piece of paper and a pen and draw trees, and play with toy examples. Only for this problem I wrote a stress test. That is the most fun for me of studying!

If this course didn't have this advanced problem, I would barely give it 3 stars.

P.S.

Theaching stuff, please conider to add extra problems, the first course is awesome and it is way too good. This course is good, but it think you may develop it not only the first one. Otherwise students may get dissapointed if they come from the previous course.

I hoped that you would have added extra problems, so I slowed down, my expectation didnt come true :(

創建者 Subhaprada C

•Aug 11, 2017

I think this is one of the best courses out there in terms of the rigour as well as the quality of the content. The instructors take great care to actually explain how the data structures work internally, complete with mathematical proofs wherever necessary. The assignments are also very good and help to solidify the understanding of the concepts.

創建者 Prakarsh D

•Aug 15, 2017

Excellent course with excellent assignments! Totally Satisfied! Thanks a lot teachers, mentors and coursera for such a great creation!

創建者 朱慧展

•Jan 19, 2017

nice course

創建者 Martynas Š

•May 27, 2018

It is a great course. But it would save a lot of time, if we could actually see errors of our submissions. Checking if your algorithm is working correctly (output wise), when you actually have a stack overflow on some test is very frustrating.

創建者 李伟超

•Apr 12, 2016

the problem is very good,the teacher has a good teaching.

創建者 HuangYunWen

•Sep 05, 2016

Some homework have challenges. But the discussion board and professor helps a lot!

創建者 Hank

•Feb 09, 2017

Great course!

創建者 nosferatum

•Dec 09, 2017

Cool advanced tasks for BST. Very Good explanations about hash tables.

創建者 Wong L L

•Aug 14, 2017

Covers the essential topics on data structures. The assignments are great for practice.

創建者 Md. I M

•Jun 07, 2016

I think it will help me a lot.

創建者 Huy V

•Feb 14, 2017

Great course, great lectures!

創建者 Joseph G N

•Mar 03, 2018

An amazing course, I hope to finish all the specialization.

創建者 Theodore G

•Nov 06, 2016

Congratulations for this second course of the "Data Structures and Algorithms Specialization". This was again well-designed, informative, and most importantly an extremely educative course. Yes, it is demanding and some times requires significant effort and time for someone to pass the programming assignments. But there is "no free lunch"! Making easy to pass the tests or providing all the test cases may help more people to earn this certification, but the added value of a course that can really learn you how to design better algorithms will be missing. On the downside, I would ask from the instructors to further elaborate on some week lectures (modules), especially if the topic is going to be discussed in the corresponding programming assignments. The problem with the splay trees is probably characteristic. Overall, well done! Many thanks for the quality of the course you provide! Keep up the good work!

創建者 Konstantin P

•Sep 27, 2017

last task is very interesting!

創建者 Gautam P

•Jun 15, 2016

Great content followed up with good programming exercises. Please keep up the good work!

創建者 Oliver A

•May 14, 2018

Very nice course!

創建者 Do H L

•Apr 23, 2016

Awesome extension of the previous course.

創建者 Souvik R

•Oct 05, 2017

This course gives you real world examples of the data structures that you are going to learn and implement and and this really helps in answering the basic question "Why am I doing for what am I doing?". The programming questions are challenging and solving it actually helps you understand every aspect of the data structure that you are applying to the question.

Overall this course has improved my understanding of data structures and also where to apply it.Wonderful work by the instructors!

創建者 Aakar R

•Aug 06, 2016

awesome

創建者 Aijaz A

•Sep 19, 2018

in one word this is best

創建者 Nestor A

•Mar 08, 2017

Excellent material and excellent delivery. Thanks for the time and effort making these courses.

創建者 Chaobin Y

•Apr 03, 2017

Nice course

創建者 Chizhi X 夏

•Jan 14, 2018

I learned a lot