Implement the Board class. Make sure to read through those comments so that you know what is required.   import java.util.Arrays; import java.util.Random; public class Board { // You don't have to use these constants, but they do make your code easier to read public static final byte UR = 0; public static final byte R = 1; public static final byte DR = 2; public static final byte DL = 3; public static final byte L = 4; public static final byte UL = 5;   // You need a random number generator in order to make random moves.  Use rand below private static final Random rand = new Random(); private byte[][] board;     /** * Construct a puzzle board by beginning with a solved board and then * making a number of random moves.  Note that making random moves * could result in the board being solved. *  * @param moves the number of moves to make when generating the board. */ public Board(int moves) { // TODO }   /** * Construct a puzzle board using a 2D array of bytes to indicate the contents * of the cells in the triangle. *  * @param b a "triangular array" with 5 rows where row 0 has 1 * cell, row 1 has 2 cells, etc. */ public Board(byte[][] puzzle) { // TODO }     /** * Returns the byte at a particular grid position. * @param row the row to look at * @param col the col to look at * @return the byte at a particular grid position */ public byte cell(int row, int col) { // TODO return -1; }   /** * Makes a move on the board by swapping the 0 with one * of the items in a neighboring cell.  The board is * left unchanged if the move is not valid. *  * @param dir the direction in which the 0 should move * @return {@code true} if the move was valid and {@code false} * if it wasn't */ public boolean move(byte movement) { return false; }   /** * Determines if the board is solved *  * @return {@true} if the board is solved and {@code false} otherwise. */ public boolean correct() { return false; } }

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
Implement the Board class. Make sure to read through those comments so that you know what is required.
 
import java.util.Arrays;
import java.util.Random;
public class Board {
// You don't have to use these constants, but they do make your code easier to read
public static final byte UR = 0;
public static final byte R = 1;
public static final byte DR = 2;
public static final byte DL = 3;
public static final byte L = 4;
public static final byte UL = 5;
 
// You need a random number generator in order to make random moves.  Use rand below
private static final Random rand = new Random();
private byte[][] board;
 
 
/**
* Construct a puzzle board by beginning with a solved board and then
* making a number of random moves.  Note that making random moves
* could result in the board being solved.
* @param moves the number of moves to make when generating the board.
*/
public Board(int moves) {
// TODO
}
 
/**
* Construct a puzzle board using a 2D array of bytes to indicate the contents
* of the cells in the triangle.
* @param b a "triangular array" with 5 rows where row 0 has 1
* cell, row 1 has 2 cells, etc.
*/
public Board(byte[][] puzzle) {
// TODO
}
 
 
/**
* Returns the byte at a particular grid position.
* @param row the row to look at
* @param col the col to look at
* @return the byte at a particular grid position
*/
public byte cell(int row, int col) {
// TODO
return -1;
}
 
/**
* Makes a move on the board by swapping the 0 with one
* of the items in a neighboring cell.  The board is
* left unchanged if the move is not valid.
* @param dir the direction in which the 0 should move
* @return {@code true} if the move was valid and {@code false}
* if it wasn't
*/
public boolean move(byte movement) {
return false;
}
 
/**
* Determines if the board is solved
* @return {@true} if the board is solved and {@code false} otherwise.
*/
public boolean correct() {
return false;
}
}

 

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Adjacency Matrix
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education