Skip to content

Commit 9e37775

Browse files
authored
Replace List in BFS with Queue (TheAlgorithms#3231)
1 parent c500e8a commit 9e37775

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/main/java/com/thealgorithms/searches/BreadthFirstSearch.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@
22

33
import com.thealgorithms.searches.DepthFirstSearch.Node;
44

5-
import java.util.ArrayList;
5+
import java.util.ArrayDeque;
66
import java.util.List;
77
import java.util.Objects;
88
import java.util.Optional;
9+
import java.util.Queue;
910

1011
/**
1112
* @author: caos321
@@ -18,18 +19,18 @@ public static Optional<Node> search(final Node node, final String name) {
1819
return Optional.of(node);
1920
}
2021

21-
List<Node> queue = new ArrayList<>(node.getSubNodes());
22+
Queue<Node> queue = new ArrayDeque<>(node.getSubNodes());
2223

2324
while (!queue.isEmpty()) {
24-
final Node current = queue.get(0);
25+
final Node current = queue.poll();
2526

2627
if (current.getName().equals(name)) {
2728
return Optional.of(current);
2829
}
2930

3031
queue.addAll(current.getSubNodes());
3132

32-
queue.remove(0);
33+
queue.remove();
3334
}
3435

3536
return Optional.empty();

0 commit comments

Comments
 (0)