public class NQueensBoard
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
NQueensBoard.Config
Parameters for initialization.
|
Constructor and Description |
---|
NQueensBoard(int size)
Creates a board with
size rows and size columns. |
NQueensBoard(int size,
NQueensBoard.Config config)
Creates a board with
size rows and size columns. |
Modifier and Type | Method and Description |
---|---|
void |
addQueenAt(XYLocation l)
Column and row indices start with 0!
|
void |
clear() |
boolean |
equals(java.lang.Object o) |
java.lang.String |
getBoardPic() |
int |
getNumberOfAttackingPairs() |
int |
getNumberOfAttacksOn(XYLocation l) |
int |
getNumberOfQueensOnBoard() |
java.util.List<XYLocation> |
getQueenPositions() |
int |
getSize() |
int |
hashCode() |
boolean |
isSquareUnderAttack(XYLocation l) |
void |
moveQueen(XYLocation from,
XYLocation to) |
void |
moveQueenTo(XYLocation l)
Moves the queen in the specified column (x-value of
l ) to
the specified row (y-value of l ). |
void |
print() |
boolean |
queenExistsAt(XYLocation l) |
void |
removeQueenFrom(XYLocation l) |
void |
setBoard(java.util.List<XYLocation> al) |
java.lang.String |
toString() |
public NQueensBoard(int size)
size
rows and size columns. Column and
row indices start with 0.public NQueensBoard(int size, NQueensBoard.Config config)
size
rows and size columns. Column and
row indices start with 0.config
- Controls whether the board is initially empty or contains some
queens.public void clear()
public void setBoard(java.util.List<XYLocation> al)
public int getSize()
public void addQueenAt(XYLocation l)
public void removeQueenFrom(XYLocation l)
public void moveQueenTo(XYLocation l)
l
) to
the specified row (y-value of l
). The action assumes a
complete-state formulation of the n-queens problem.l
- public void moveQueen(XYLocation from, XYLocation to)
public boolean queenExistsAt(XYLocation l)
public int getNumberOfQueensOnBoard()
public java.util.List<XYLocation> getQueenPositions()
public int getNumberOfAttackingPairs()
public int getNumberOfAttacksOn(XYLocation l)
public boolean isSquareUnderAttack(XYLocation l)
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public void print()
public java.lang.String getBoardPic()
public java.lang.String toString()
toString
in class java.lang.Object