Voltar para Graph Search, Shortest Paths, and Data Structures

estrelas

1,874 classificações

•

223 avaliações

The primary topics in this part of the specialization are: data structures (heaps, balanced search trees, hash tables, bloom filters), graph primitives (applications of breadth-first and depth-first search, connectivity, shortest paths), and their applications (ranging from deduplication to social network analysis)....

DS

29 de mar de 2020

Awesome course! Professor Roughgarden is fantastic. The material was appropriately challenging. Perfect amount of rigor. Only one minor squabble: the hash problem set is terribly misleading.

OK

30 de out de 2021

The course was very interesting. As a person who struggles with problem-solving, I found this course very helpful because the professor's ideas are well explained. It makes me to learn more.

Filtrar por:

por Divij S

•23 de fev de 2018

Similar review as the first course.

1) Assignments 1 and 4 test your ability to write optimized code which can handle large input sets (1 million integers) more than knowledge of the algorithm itself. This would be fine except that there is no support or material for figuring this out. Assignment 1's solution as taught in the course, for the most part, does not work for that input size. It's a week of frustration trying to figure out how to handle that. I STILL don't have a proper solution for that problem.

2) NO support from staff/mentors/students in the forum, especially for those input size problems.

3) Quizzes tend to test maths knowledge not taught in the course too much - this is less the case in this second course than the first one

Probably not going to do the 3rd and 4th courses.

por Krishna K

•1 de jul de 2019

I think this is an excellent class. However, I really needed to both watch these AND read Cormen's Algorithms textbook to understand and grasp the concpets (And even answer the quizes). I think the pseudo code could be better guided as it is a struggle to really understand what it is supposed to contain.

I think a nice additional feature that should be added to the class is a solutions explanations for the quizzes and final exams. This should only be unlocked after passing the quiz, but it would be useful as an aid to understanding why the solution is right, rather than just guessing. Some other coursera classes do these, and I think for this class in particular, it would be a big help.

por Jayachandra B A

•16 de out de 2018

Interesting problems and explanations. But mathematical analysis is going off of my mind. It has very good explanation. Not sure, whether I can carry forward that knowledge or not.

por Hoang N

•30 de jul de 2017

One of the greatest courses on this website. However, I believe this course will be more approachable if it contains more practical guide such as sample solution for algorithms.

por Chris S

•13 de abr de 2018

Good course, but instructor does start to move fast and a few walk-throughs in certain spots would be beneficial . However the lack of it makes you do your own research, which is also beneficial.

por Shiv K

•22 de jul de 2017

Really taught me a lot. Rather well-explained, except proof of Dijkstra's - Wikipedia explains it better and faster. But good walkthroughs of how algorithms work, because it helps you to visualise and understand properly. Interesting assignments, although it would be useful to have test cases provided because, especially for week 1 and 4, it takes a ridiculously long time to run the program, and it would be wasted time if you turn out to get the wrong answer. Test cases would help you be more sure that your code is right before you attempt to run it on the humongous file. I had to use PyPy to speed the programs up because I use Python which is generally slow. Advice: for week 1 and 4, use C or C++ or some other fast language. Or Cython if you can get it to work.

por Alexander L

•11 de nov de 2019

Very interesting. I learned a lot of new things. 5 stars!

Just a few things that could be improved:

-- The video and its audio are not really synchronized (maybe because the video is pretty old)

-- The subtitles are not good. Even the english ones were not written by someone who knows what the professor is talking about...

Nowadays there are better solutions to validate whether someone solved a programming task. geeksforgeeks.org and hackerrank.com for example just execute the program with test input.

But all in all: Very positive experience.

por Victor C

•28 de mai de 2017

The course is exceptional, but it could use some touchups. For instance, some of the programming problems are ill-described and you implement what is not "asked" for. Use the forums do get actual detail that should have been included. On the other hand, that's what "real world" problems are like; except they are even worse; even the question is not asked... In that sense it presents a real mystery which requires pre-programming thinking that is in itself a long wrought skill.

por Mario R

•7 de ago de 2019

Magnificent, well structured and explained, with some creative ways to see algorithms.

The only thing I would recommend is to use additional references for the graphs section, CLRS and KT for example helped me a lot.

por Danijel P

•30 de jul de 2018

This is an excellent course! It is well explained and I would recommend it to anyone interested in algorithms and data structures covered in this course.

por Ovidiu F

•16 de out de 2021

Clear, concise, a right mix of rigorous mathematical proofs and engineering advice.

por Ziyan H

•4 de set de 2017

wonderful

por Anurag G

•17 de jul de 2018

Using slides would have been better but anyway great content. Over simplified sometimes though.

por Nikhil n

•21 de jul de 2017

we can't understand the writing. please provide the slides to understand better.

por Brian C

•26 de mar de 2017

This was another good one, providing a slightly deeper dive than I had seen in other courses. The big revelation here, for me, was the addition of Bellman-Ford algorithm for evaluating shortest path in networks (graphs) that have some negative distance values between nodes.

I also like the approach to data structures (high-level, then drilling down into increasing detail for level of interest) I find it hard to say I understand a data structure based on "Interface and Theory" and I would have felt the certification meant more with at least a rudimentary implementation. I guess that makes me a coder at at heart.

I am about to jump into the next course of the specialization: Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming As with the two courses before, I am expecting new revelations about the kind of programming issues I've been solving for more than fifteen years.

por Benoit P

•29 de dez de 2016

This is a great course. The teacher is very clear, and the material is very interesting. The programming assignments are interesting: the problems asked are very simple, but the input is generally too large to use brute force: you really have to implement the algorithms presented in the videos. This makes you realize how much smart algorithms can make a difference.

The level of the class is relatively high, compared to other Coursera courses I've taken. If you want some serious training on algorithms, look no further.

por --

•11 de abr de 2021

Great course. I would recommend making the videos more concise. Also the figures of speech are sometimes difficult to understand for non-native speaker. Personally I don't find them to be useful for such technical course. I like studying by examples, the are lot of them in this course, I wish there were even more. Sometimes I find myself preferring the explanation from the top recommendation on YouTube, which is most often made by some random Indian guy, although I'm Russian.

por Piyush S

•13 de abr de 2018

I think this was the best course of the specialization. Stacks, queues, heaps, search trees, hash tables etc. are data structures everyone should know; when to use and their raison d'etre as he says.. and to that end this course is very effective. This course also has a very nice flow. And of course, Prof. Tim Roughgarden is simply awesome. I wish I got a chance to be in his offline classroom.

por Jonathan M

•6 de mai de 2020

Very comprehensive introduction to data structures like graphs, hash tables, and heaps. This course does a great job of introducing these concepts at a high, language agnostic level. The focus is more on conceptual understanding and understanding how and why the data structures work; with this understanding the programming assignments become manageable.

por Hagen T

•19 de mar de 2018

This is an excellent course on algorithms, that has given me a deeper understanding of the subject.

I am a theoretical physicist using this course as preparation for coding interviews, and the speed, amount of rigor and optional material (the optional theory problems in particular) feel perfect for my learning effort.

por Aria B

•21 de abr de 2020

I particularly like the fact that you can answer the home-works in any programming language you are comfortable with. I also like the level of material. As someone who has technical background but not computer science, I learn many new ideas in every course of this specialization with minimum waste of time! Thank you!

por Anthony J O

•3 de mai de 2017

I enjoyed this course, it was more challenging than the first one in the sequence, especially in the graph-search portion. The last 2 weeks are much more simple, but it is still essential for any serious student of CS to learn about data structures, especially common and practical DS such as heaps and hash tables.

por Joshua S

•2 de nov de 2018

It's a good course, but doesn't offer as much breadth as the first course. If you've never seen these concepts at all, this is a great starting point. If you are looking for a refresher, you might find that this course doesn't cover all the topics you want to drill into.

por Damian C

•17 de fev de 2018

I found this second part of the Algorithms stream fascinating. Getting into the details of Algorithms I only knew by name before was an extremely rewarding experience. Lots of fun and very enjoyable. Thanks Coursera for making the available, keep the good work!

por John W

•13 de ago de 2017

I am still really enjoying the course. The programming assignment for week four didn't require a hash table to implement, so didn't seem entirely relevant to the week's material (instead I used sets). At any rate, would wholeheartedly recommend the course.

- Analista de dados do Google
- Gestão de projetos no Google
- Design de UX no Google
- Suporte de TI do Google
- Ciência de dados da IBM
- Analista de dados da IBM
- Análise de dados da IBM com Excel e R
- Analista de Cibersegurança da IBM
- Engenharia de dados da IBM
- Desenvolvedor de nuvem full stack – IBM
- Marketing em mídias sociais do Facebook
- Análise de marketing do Facebook
- Representante de desenvolvimento de vendas da Salesforce
- Operações de vendas da Salesforce
- Contabilidade da Intuit
- Preparação para a Certificação em Google Cloud: Cloud Architect
- Preparação para a Certificação em Google Cloud: Cloud Data Engineer
- Inicie sua carreira
- Prepare-se para uma Certificação
- Amplie suas qualificações profissionais

- cursos gratuitos
- Aprenda um idioma
- pythonpython
- Java
- web designweb design
- SQL
- Cursos grátis
- Microsoft Excel
- Gestão de projetos
- Segurança cibernéticaSegurança Cibernética
- Recursos humanos
- Cursos gratuitos de ciência de dados
- falar inglês
- Redação de conteúdo
- Desenvolvimento Web completoDesenvolvimento Web Completo
- Inteligência artificial
- Programação em C
- Habilidades de comunicação
- Blockchain
- Veja todos os cursos

- Competências para equipes de ciência de dados
- Tomada de Decisões Baseada em Dados
- Habilidades de engenharia de software
- Habilidades Pessoais para Equipes de Engenharia
- Habilidades Administrativas
- Habilidades de marketing
- Habilidades para Equipes de Vendas
- Habilidades de Gerente de Produto
- Habilidades Financeiras
- Cursos de ciência de dados populares no Reino Unido
- Beliebte Technologiekurse in Deutschland
- Certificações populares de segurança cibernética
- Certificações populares de TI
- Certificações populares de SQL
- Guia de carreira de gerente de marketing
- Guia de carreira de gerente de projeto
- Habilidades de programação em Python
- Guia de carreira de desenvolvedor Web
- Competências de análise de dados
- Habilidades para designers de UX

- Certificados MasterTrack®
- Certificados profissionais
- Certificados universitários
- Graduações em negócios e MBA
- Graduações em Ciência de Dados
- Graduações em Ciência da Computação
- Graduações em análise de dados
- Graduações em Saúde Pública
- Graduações em ciências sociais
- Graduações em gestão
- Graduações nas melhores universidades europeias
- Mestrados
- Bacharelados
- Graduações com uma trajetória de desempenho
- Cursos em Ciências (BSc)
- O que é uma licenciatura?
- Quanto tempo leva um mestrado?
- Um MBA on-line vale a pena?
- 7 maneiras de pagar pela pós-graduação
- Ver todos os certificados