Bird
Raised Fist0
DSA Javaprogramming~5 mins

Graph Terminology Vertices Edges Directed Undirected Weighted in DSA Java - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a vertex in a graph?
A vertex (or node) is a fundamental part of a graph representing a point or position where edges meet. Think of it as a city on a map.
Click to reveal answer
beginner
What is an edge in a graph?
An edge connects two vertices in a graph. It represents a path or link between points, like a road connecting two cities.
Click to reveal answer
beginner
What is the difference between a directed and an undirected edge?
A directed edge has a direction, like a one-way street, showing movement from one vertex to another. An undirected edge has no direction, like a two-way street, allowing movement both ways.
Click to reveal answer
beginner
What does it mean if a graph is weighted?
A weighted graph has edges with values (weights) that represent cost, distance, or time. For example, a road might have a weight showing how long it takes to travel.
Click to reveal answer
intermediate
Can a graph have both directed and undirected edges?
Yes, such graphs are called mixed graphs. They contain some edges with direction and some without, like a map with both one-way and two-way streets.
Click to reveal answer
What is a vertex in a graph?
AA point where edges meet
BA connection between two points
CA direction of travel
DA value assigned to an edge
Which type of edge has a direction?
AUndirected edge
BWeighted edge
CDirected edge
DLoop edge
What does a weighted edge represent?
AA connection with a cost or value
BA connection without direction
CA vertex in the graph
DA disconnected node
In an undirected graph, edges are:
AAlways loops
BOne-way connections
CAlways weighted
DTwo-way connections
What is a mixed graph?
AA graph with only weighted edges
BA graph with both directed and undirected edges
CA graph with no edges
DA graph with only vertices
Explain the difference between directed and undirected edges in a graph.
Think about how traffic flows on different types of roads.
You got /3 concepts.
    Describe what a weighted graph is and give an example of when it might be used.
    Imagine planning a trip with different travel times.
    You got /3 concepts.

      Practice

      (1/5)
      1. Which of the following best describes a vertex in a graph?
      easy
      A. A point or node where edges meet
      B. A line connecting two vertices
      C. A graph with no edges
      D. A graph that has weights on edges

      Solution

      1. Step 1: Understand the definition of vertex

        A vertex is a fundamental unit in a graph representing a point or node.
      2. Step 2: Differentiate vertex from edges and graph types

        Edges connect vertices; weights and graph types describe edges or the whole graph, not vertices.
      3. Final Answer:

        A point or node where edges meet -> Option A
      4. Quick Check:

        Vertex = point/node [OK]
      Hint: Vertices are points/nodes, edges are connections [OK]
      Common Mistakes:
      • Confusing edges with vertices
      • Thinking weights define vertices
      • Mixing graph types with vertex definition
      2. Which of the following is the correct way to declare an undirected weighted graph using adjacency list in Java?
      easy
      A. Map graph = new HashMap<>();
      B. Map graph = new TreeMap<>();
      C. Map>> graph = new TreeSet<>();
      D. Map>> graph = new HashMap<>();

      Solution

      1. Step 1: Identify data structure for weighted edges

        Weighted edges need to store both neighbor and weight, so Pair is used.
      2. Step 2: Choose correct map and list types

        HashMap with List of pairs is standard for adjacency list of weighted graphs.
      3. Final Answer:

        Map>> graph = new HashMap<>(); -> Option D
      4. Quick Check:

        Weighted graph uses Pair for edges [OK]
      Hint: Weighted edges need pairs: neighbor and weight [OK]
      Common Mistakes:
      • Using List<Integer> for weighted edges
      • Using TreeSet instead of List for adjacency
      • Confusing Map types for graph
      3. Consider the following Java code snippet for a directed graph:
      Map graph = new HashMap<>();
      graph.put(1, Arrays.asList(2, 3));
      graph.put(2, Arrays.asList(3));
      graph.put(3, Arrays.asList());
      System.out.println(graph.get(1));
      What will be the output?
      medium
      A. null
      B. [1, 2, 3]
      C. [2, 3]
      D. []

      Solution

      1. Step 1: Check what is stored for key 1

        Key 1 maps to list containing 2 and 3.
      2. Step 2: Print the list for key 1

        Printing graph.get(1) outputs the list [2, 3].
      3. Final Answer:

        [2, 3] -> Option C
      4. Quick Check:

        graph.get(1) = [2, 3] [OK]
      Hint: Print adjacency list for key to see neighbors [OK]
      Common Mistakes:
      • Expecting all vertices in output
      • Confusing keys and values
      • Assuming empty list prints null
      4. The following code attempts to add an edge to an undirected graph represented by adjacency list. What is the bug?
      void addEdge(Map graph, int u, int v) {
          graph.get(u).add(v);
      }
      medium
      A. It adds edge only from u to v, missing v to u
      B. It uses get() instead of put() to add edge
      C. It should use a Set instead of List for adjacency
      D. It should clear the adjacency list before adding

      Solution

      1. Step 1: Understand undirected graph edge addition

        Undirected edges must be added both ways: u to v and v to u.
      2. Step 2: Analyze given code

        Code adds edge only from u to v, missing the reverse edge.
      3. Final Answer:

        It adds edge only from u to v, missing v to u -> Option A
      4. Quick Check:

        Undirected edges need both directions [OK]
      Hint: Undirected edges require adding both directions [OK]
      Common Mistakes:
      • Adding edge only one way in undirected graph
      • Confusing get() and put() usage
      • Clearing adjacency list mistakenly
      5. You have a weighted directed graph represented as:
      Map>> graph = new HashMap<>();
      graph.put(1, Arrays.asList(new Pair<>(2, 5), new Pair<>(3, 10)));
      graph.put(2, Arrays.asList(new Pair<>(3, 2)));
      graph.put(3, Arrays.asList());
      How would you find the total weight of edges going out from vertex 1?
      hard
      A. Sum weights 10 + 2 = 12
      B. Sum weights 5 + 10 = 15
      C. Sum weights 5 + 2 = 7
      D. Count edges: 2

      Solution

      1. Step 1: Identify edges from vertex 1

        Edges from 1 go to 2 with weight 5, and to 3 with weight 10.
      2. Step 2: Sum the weights of these edges

        Total weight = 5 + 10 = 15.
      3. Final Answer:

        Sum weights 5 + 10 = 15 -> Option B
      4. Quick Check:

        Total outgoing weight from 1 = 15 [OK]
      Hint: Add weights of all edges from the vertex [OK]
      Common Mistakes:
      • Adding weights from wrong vertices
      • Counting edges instead of summing weights
      • Mixing weights of different edges
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard