Вернуться к структуры данных

4.6

звезд

Оценки: 2,780

•

Рецензии: 455

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!...

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.

Oct 28, 2019

I found the course a little tough, but it's worth the effort. It takes more time than mentioned. Apart from that, it is actually good and covers most of the topics required for interviews.

Фильтр по:

автор: Pablo E M M

•Sep 07, 2017

this is my second course that I have taken. I learned many things this course is more difficult than algorithmic toolbox but when you work hard you can finish all units

in the beginning i thought that i would not be able to continue because i dont have a lot of knowledge in c+, java or python, but i decided to learn c+ sonce the first course. these coursed were very difficult but i could finish then and this is all because of the professors whom were excellent and the challenging homework.

Thanks to everyone that has dedicated there time and resources to mke this wonderful course, I appreciate it a lot

автор: 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.

автор: vlad

•May 07, 2018

Really good course to understand implementation details and analysis of the most used data structures, both basic and advanced. The explanations are awesome accompanied by challenging problems to solidify your knowledge. I'd definitely recommend this course to anybody who's looking to improve their problem-solving skills, getting ready for coding interview or just want clear explanations of some of the core data structures concepts in computer science. I really enjoyed this course, thank you everybody for putting it all together!

автор: Gaurav V

•Feb 13, 2020

I thought having done Algorithmic Design with much difficulty Data Structures would be a bit easier. To my surprise this one proved to be a tough one.

But having gone through the grind, I feel happy and satisfied to have done this course and feel enthusiastic about pursuing the specialization further. This is far more effective way of learning and understand the concepts covered than going through books and/or videos alone.

The assignments are the real things in these courses. That's where the real learning happens.

автор: 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!

автор: Dennis S

•Jun 10, 2016

Recently the instructors updated the course and implemented a solution to all my past complains.

In my opinion the team is really taking the quality serious.

However I just want to mention, that there are regular session for each course so that everybody can avoid having two overlapping courses in this specialization at the same time.

I did not know that and worked on two courses at the same time, until the instructor informed me about the short interval between sessions of a given course.

автор: Ananth D

•May 03, 2020

This course covers all possible data structures, what was need of those data structures, how could they be implemented and what is time complexity of such implementation. Also, the programming assignment problems were very challenging, some even taking 2 to 3 days of time to solve. I wish after the course is completed Professors could provide solutions to all problems, since it is difficult to find answers to every assignment problem.

автор: Ivan K

•Jul 10, 2017

Thanks for the great course! Giving it a five stars. Although, the programming assignment for the last week could be better. Instead of implementing the same in-order tree-traversing three times with minor variations (first time as requested, second time to test if a given tree is a BST, and a "hard BST" variance), would be better to include tasks on implementing balancing and splaying a tree.

автор: Aleksandr F

•Aug 29, 2016

Great course! As soon as you'll understand how the splay tree works and use a hint from the assignment, the rope problem (the best so far) will no longer be a problem. The course could have been improved though by giving a brief overview of B-trees and Red-Black trees. Anyways, thanks to all the instructors for their hard work and good luck to the all the learners!

автор: Phat L

•May 21, 2017

This course helps me fully understand how hash is implemented in most programming languages. How to build something like dropbox.... The Rope data structure is the most challenge I've met for a long time. Many thanks to creators help me get a chance to understand Rope data structure, then I can understand what Xi- text editor platform that Google is writing about.

автор: Dheepak J

•Mar 14, 2019

A) An eye opener course in my regards which is really well curated and organized.

B) I had gone had to learn a good deal of knowledge and software wisdom from this course that I highly RECOMMEND this to others.

C) Enroll into it and try to finish the assignments on time and I am sure you will end up seeing the results yourself...

" Well Done San Diego team"

автор: Imaani E

•Jan 22, 2017

Great course - the homework problems were really helpful for cementing concepts. However, I did feel that the difficulty of the homework problems did not increase with the progress of the course. I think that it would have been very reasonable to increase the difficulty of the homework assignments as the course progressed. Otherwise, great overall course.

автор: 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.

автор: Haoran G

•Oct 02, 2017

An excellent course for those who is willing to learn basic concepts and practice their programming skills in data structures. Students would learn a lot after finishing the assignments. More over, slides provided are extremely clear and helpful.

However, it seems that the forum is not active, most questions and answers were posted months ago.

автор: Madan K

•Jun 04, 2016

Really awesome Course , Must take it as a software Engineer and if you have already learned these things , It will open your eyes and make you correct your mistakes.

Simple explanations in videos and covering all intermediate data structures.

Problems are also good companion to the course content and allowing us to implement in many languages .

автор: RAJESH M

•May 23, 2020

Excellent course. Actually my university can not complete Data Structure Due to this COVID-19. But this course has given the perfect opportunity to acquire the knowledge of Data Structures and Algorithms. The problems were a bit challenging but I enjoyed it a lot. I would recommend everyone do this course who loves programming. Thanks!

автор: Walid O

•Jul 24, 2017

really good course , advanced problems will improve your skills to think and use the data structure , although it is obvious where to think as it is application on the week lesson so maybe if the problems are more general will be better.

still , this course improved my skill to implement data structure and understand it deeply . thanks

автор: Andrew J

•May 21, 2017

A thorough course covering many fundamental data structures and some very impressive applications.

The assignments are challenging but extremely satisfying. I especially enjoyed implementing a rolling hash and working with binary trees.

It covered more material in depth than my data structures university subject.

автор: Christopher B

•Aug 02, 2016

A very good course if you want to learn how we organize data in such a way that we can perform specific operations with low computing cost. This course is language agnostic so it becomes more about learning the fundamental structures and less about troubleshooting the language you use. Very good course!

автор: Madhusudhan S

•Jan 11, 2018

Perhaps the videos on AVL Trees (Rotations basically) and Splay Trees can be enhanced to give a more thorough grounding. I had to refer to many sources to get the concepts grilled into my head. But it has been an awesome experience so far in this specialization. Kudos to the team behind this.

автор: Shyama D

•Sep 04, 2016

Helped summarize the basics for a newbie like me. Glad I took it :) Recommended.

Although, I do recommend some more material on the last two weeks - I loved the concepts that were taught, but I feel there could have been more lectures on BST applications, given how powerful they are!

Thanks!

автор: Anurag S

•Apr 09, 2020

Amazing explanation of Queue, Hashing, Disjoint-set, Dynamic Array, etc. with their basic operations. An amazing way of IP address representation I learned in Hashing I paste the IP in a single decimal digit in my browser of some website with "http://<single decimal IP>" it's working.

автор: Parthiban D

•Apr 25, 2018

As every other course on this series the programming assignments are excellent. I ignore lectures and go directly to the assignments. The lecture are very monotonous in tone. Its really hard to understand the accent. I usually learn topics elsewhere and attempt the assignments here.

автор: Fabrice L

•Nov 01, 2017

Very interesting class, I learned a lot, about implementation and real life applications.

Like the previous class, there is many assignments to practice, so I really recommend to pick up a programming language that you are comfortable with, if you want to move forward at a good pace.

автор: Kevin K

•Aug 18, 2016

Personally, this course is interesting and essential for the learner to proceed to other more advanced courses, either within this specialisation or not. There is only one suggestion that it will be better if the instructors can provide more details of the pseudo codes.

- Искусственный интеллект для каждого
- Введение в TensorFlow
- Нейронные сети и глубокое обучение
- Алгоритмы, часть 1
- Алгоритмы, часть 2
- Машинное обучение
- Машинное обучение с использованием Python
- Машинное обучение с использованием Sas Viya
- Программирование на языке R
- Введение в программирование на MATLAB
- Анализ данных с Python
- Основы AWS: введение в облачные приложения
- Основы Google Cloud Platform
- Обеспечение надежности веб-сервисов
- Разговорный английский язык на профессиональном уровне
- Наука благополучия
- Научитесь учиться
- Финансовые рынки
- Проверка гипотез в здравоохранении
- Основы повседневного руководства

- Глубокое обучение
- Python для всех
- Наука о данных
- Прикладная наука о данных с Python
- Основы бизнеса
- Разработка архитектуры на платформе Google Cloud
- Инженерия данных на платформе Google Cloud
- От Excel до MySQL
- Продвинутое машинное обучение
- Математика в машинном обучении
- Беспилотные автомобили
- Блокчейн для организаций
- Бизнес-аналитика
- Навыки Excel для бизнеса
- Цифровой маркетинг
- Статистический анализ в здравоохранении на языке R
- Основы иммунологии
- Анатомия
- Управление инновациями и дизайн-мышление
- Основы позитивной психологии

- ИТ-поддержка Google
- Специалист IBM по привлечению клиентов
- Наука о данных IBM
- Прикладное управление проектами
- Профессиональная сертификация IBM в области прикладного ИИ
- Машинное обучение для Analytics
- Пространственный анализ данных и визуализация
- Проектирование и управление в строительстве
- Педагогический дизайн