Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package BreadthFirstSearch;
- import java.util.HashMap;
- import java.util.LinkedList;
- import java.util.Map;
- import java.util.Queue;
- public class BreathFirstSearch {
- public static void main(String[] args) {
- Map<String, String[]> map = new HashMap<>();
- map.put("you", new String[]{"Alice", "Bob", "Claire"});
- map.put("Bob", new String[]{"Anuj", "Peggy"});
- map.put("Alice", new String[]{"Peggy"});
- map.put("Claire", new String[]{"Thom", "Johnny"});
- map.put("Anuj", new String[]{});
- map.put("Peggy", new String[]{});
- map.put("Thom", new String[]{});
- map.put("Johnny", new String[]{});
- System.out.println(breathFirstSearch("Anuj", map));
- }
- private static boolean breathFirstSearch(String name, Map map) {
- Queue<String> toSearchQueue = new LinkedList<>();
- Queue<String> searchedQueue = new LinkedList<>();
- toSearchQueue.add((String) map.get("you"));
- while (!toSearchQueue.isEmpty()) {
- String currentName = toSearchQueue.poll();
- if (!searchedQueue.contains(currentName)) {
- if (isMangoSeller(currentName)) {
- return true;
- } else {
- toSearchQueue.add(currentName);
- searchedQueue.add(currentName);
- }
- }
- }
- return false;
- }
- private static boolean isMangoSeller(String name) {
- return name.equals("Anuj");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement