Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Byte-Sized-Chunks: Graph Algorithms and Problems in Java
Rating: 4.5 out of 5(63 ratings)
2,878 students

Byte-Sized-Chunks: Graph Algorithms and Problems in Java

Djisktra, Prim, Kruskal, Bellman-Ford, the topological sort - all will make sense now!
Created byLoony Corn
Last updated 3/2016
English

What you'll learn

  • Design and implement software using canonical graph algorithms - Djikstra, Prim, Kruskal, Bellman Ford and topological sort
  • Understand the use-cases for the common graph algorithm

Course content

5 sections28 lectures5h 13m total length
  • You, This Course, and Us!1:14
  • Introducing The Graph15:40
    The graph is a data structure that is used to model a very large number of real world problems. It's also an programming interview favorite. The study of graphs and algorithms associated with graphs forms an entire field of study called graph theory.
  • Types Of Graphs7:21
    Edges in a graph can be directed or undirected. A graph with directed edges forms a Directed Graph and those with undirected edges forms an Undirected Graph. These edges can be likened to one-way and two-way streets.
  • The Directed And Undirected Graph14:29
    Different relationships can be modeled using either Directed or Undirected graphs. When a graph has no cycles it's called an acyclic graph. A graph with no cycles is basically a tree.
  • Representing A Graph In Code8:09

    There are a number of different ways in which graphs can be implemented. However they all follow they same basic graph interface. The graph interface allows building up a graph by adding edges and traversing a graph by giving access to all adjacent vertices of any vertex.

  • Graph Using An Adjacency Matrix15:25
    An adjacency matrix is one way in which a graph can be represented. The graph vertices are rows and columns of the matrix and the cell value shows the relationship between the vertices of a graph.
  • Graph Using An Adjacency List And Adjacency Set17:53
    The adjacency list and the adjacency set are alternate ways to represent a graph. Here the connection between the vertices is represented using either a linked list or a set.
  • Comparison Of Graph Representations10:08

    Compare the adjacency matrix, adjacency list and the adjacency set in terms of space and time complexity of common operations

  • Graph Traversal - Depth First And Breadth First14:56

    Common traversal methods of trees apply to graphs as well. There is an additional wrinkle with graphs, dealing with cycles and with unconnected graphs. Otherwise the algorithms are exactly the same as those we use to traverse trees.

Requirements

  • Basic knowledge of programming is assumed, preferably in Java

Description

Note: This course is a subset of our much longer course 'From 0 to 1: Data Structures & Algorithms' so please don't sign up for both:-)

This is an animated, visual and spatial way to learn data structures and algorithms

  • Our brains process different types of information differently - evolutionarily we are wired to absorb information best when it is visual and spatial i.e. when we can close our eyes and see it
  • More than most other concepts, Data Structures and Algorithms are best learnt visually. These are incredibly easy to learn visually, very hard to understand most other ways
  • This course has been put together by a team with tons of everyday experience in thinking about these concepts and using them at work at Google, Microsoft and Flipkart

Taught by a Stanford-educated ex-Googler.

The graph is a data structure that is used to model a very large number of real world problems. It's also an programming interview favorite. The study of graphs and algorithms associated with graphs forms an entire field of study called graph theory.

  • Directed and undirected graphs
  • Adjacency matrices, lists and sets
  • Breadth and Depth-First traversal
  • Topological sort
  • Djikstra's algorithm
  • Bellman-Ford algorithm
  • Prim's algorithm
  • Kruskal's algorithm

Who this course is for:

  • Nope! Please don't enroll for this class if you have already enrolled for our 15-hour course 'From 0 to 1: Data Structures and Algorithms'
  • Yep! Computer Science and Engineering grads who are looking to really visualise data structures, and internalise how they work
  • Yep! Experienced software engineers who are looking to refresh important fundamental concepts
  • Yep! MBA graduates or business professionals who are looking to move to a heavily quantitative role