Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int alfaBeta(StanMini s, int d, int alfa, int beta) // alfa-beta + TT
- {
- wierzcholki = wierzcholki.add(BigInteger.ONE);
- boolean koniec = false;
- if (s.koniec()) koniec = true;
- if (koniec || d == 0) return eval(s,d,koniec);
- Iterator<StanMini> itr;
- s.generujDzieci();
- itr = s.dzieci.iterator();
- String best = "";
- int ile = -111111;
- // szuka najlepszego
- itr = s.dzieci.iterator();
- while(itr.hasNext())
- {
- StanMini tmp=itr.next();
- if (sterowiec.inter.st.bylo.contains(tmp.skrot.id)) continue;System.out.println("cykl");
- {
- int val = -alfaBeta(tmp,d-1,-beta,-alfa);
- if (val > alfa)
- {
- if (ile < val)
- {
- ile = val;
- best = tmp.skrot.id;
- }
- alfa = val;
- }
- if (alfa >= beta)
- {
- alfabeta = alfabeta.add(BigInteger.ONE);
- s.skrot.bestChildId = best;
- return beta;
- }
- }
- }
- s.dzieci.clear();
- s.skrot.bestChildId = best;
- return alfa;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement