Breadth First Search
Category: Graphs
```
Problem Statement
(Problem statement not extracted)
```
Approach & Solution
Solution 1
```java
import java.util.*;
class Program {
static class Node {
String name;
List
```
Code Template
```java import java.util.*;
class Program {
// Do not edit the class below except
// for the breadthFirstSearch method.
// Feel free to add new properties
// and methods to the class.
static class Node {
String name;
List
public Node(String name) {
this.name = name;
}
public List<String> breadthFirstSearch(List<String> array) {
// Write your code here.
return null;
}
public Node addChild(String name) {
Node child = new Node(name);
children.add(child);
return this;
}
} } ```
```
Test Cases
``` Test Case 1 { "graph": { "nodes": [ {"children": ["B", "C", "D"], "id": "A", "value": "A"}, {"children": ["E", "F"], "id": "B", "value": "B"}, {"children": [], "id": "C", "value": "C"}, {"children": ["G", "H"], "id": "D", "value": "D"}, {"children": [], "id": "E", "value": "E"}, {"children": ["I", "J"], "id": "F", "value": "F"}, {"children": ["K"], "id": "G", "value": "G"}, {"children": [], "id": "H", "value": "H"}, {"children": [], "id": "I", "value": "I"}, {"children": [], "id": "J", "value": "J"}, {"children": [], "id": "K", "value": "K"} ], "startNode": "A" } } Test Case 2 { "graph": { "nodes": [ {"children": ["B", "C"], "id": "A", "value": "A"}, {"children": ["D"], "id": "B", "value": "B"}, {"children": [], "id": "C", "value": "C"}, {"children": [], "id": "D", "value": "D"} ], "startNode": "A" } } Test Case 3 { "graph": { "nodes": [ {"children": ["B", "C", "D", "E"], "id": "A", "value": "A"}, {"children": [], "id": "B", "value": "B"}, {"children": ["F"], "id": "C", "value": "C"}, {"children": [], "id": "D", "value": "D"}, {"children": [], "id": "E", "value": "E"}, {"children": [], "id": "F", "value": "F"} ], "startNode": "A" } } Test Case 4 { "graph": { "nodes": [ {"children": ["B"], "id": "A", "value": "A"}, {"children": ["C"], "id": "B", "value": "B"}, {"children": ["D", "E"], "id": "C", "value": "C"}, {"children": ["F"], "id": "D", "value": "D"}, {"children": [], "id": "E", "value": "E"}, {"children": [], "id": "F", "value": "F"} ], "startNode": "A" } } Test Case 5 { "graph": { "nodes": [ {"children": ["B", "C", "D", "E", "F"], "id": "A", "value": "A"}, {"children": ["G", "H", "I"], "id": "B", "value": "B"}, {"children": ["J"], "id": "C", "value": "C"}, {"children": ["K", "L"], "id": "D", "value": "D"}, {"children": [], "id": "E", "value": "E"}, {"children": ["M", "N"], "id": "F", "value": "F"}, {"children": [], "id": "G", "value": "G"}, {"children": ["O", "P", "Q", "R"], "id": "H", "value": "H"}, {"children": [], "id": "I", "value": "I"}, {"children": [], "id": "J", "value": "J"}, {"children": ["S"], "id": "K", "value": "K"}, {"children": [], "id": "L", "value": "L"}, {"children": [], "id": "M", "value": "M"}, {"children": [], "id": "N", "value": "N"}, {"children": [], "id": "O", "value": "O"}, {"children": ["T", "U"], "id": "P", "value": "P"}, {"children": [], "id": "Q", "value": "Q"}, {"children": ["V"], "id": "R", "value": "R"}, {"children": [], "id": "S", "value": "S"}, {"children": [], "id": "T", "value": "T"}, {"children": [], "id": "U", "value": "U"}, {"children": ["W", "X", "Y"], "id": "V", "value": "V"}, {"children": [], "id": "W", "value": "W"}, {"children": ["Z"], "id": "X", "value": "X"}, {"children": [], "id": "Y", "value": "Y"}, {"children": [], "id": "Z", "value": "Z"} ], "startNode": "A" } }