Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.38 KB | None | 0 0
  1. import java.util.*;
  2. import java.util.Stack;
  3.  
  4. public class MijnZoeker implements Zoeker {
  5.    
  6.     public Persoon zoekBeroemdheid(List<Persoon> groep) {
  7.         if (groep.size() == 0) {
  8.             return null;
  9.         } else if (groep.size() == 1) {
  10.             return groep.get(0);
  11.         } else {
  12.             // returnt null als er geen is en de persoon als er wel een is
  13.             Stack<Persoon> st = new Stack<>();
  14.             Persoon c = new Persoon();
  15.             Persoon a = new Persoon();
  16.             Persoon b = new Persoon();
  17.             // Stap 1: Iedereen pushen naar de stack
  18.             for (int i = 0; i < groep.size(); i++) {
  19.                 st.push(groep.get(i));
  20.             }
  21.             while (st.size() > 1) {
  22.                 // Stap 2:eerste twee poppen
  23.                 a = st.pop();
  24.                 b = st.pop();
  25.                 if (a.kent(b)) {
  26.                     st.push(b);
  27.                 } else {
  28.                     st.push(a);
  29.                 }
  30.             }
  31.                 // c is de laatste
  32.                 c = st.pop();
  33.      
  34.             // Step 3 : checken of de laatste de celebrity is
  35.             for (int i = 0; i < groep.size(); i++) {
  36.                 if (!(groep.get(i).kent(c)) || !(groep.get(i).kent(c))) {
  37.                     return null;
  38.                 }
  39.             }
  40.             return c;
  41.         }
  42.     }
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement