An algorithm to print the chess board pattern in javascript.
We will be writing a program to print the chess board pattern. '#'
will represent the black box and ' '
white space will represent the white box on the chessboard.
Example
Input: 8 8 Output: # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
Implementation
The chess board can be of any dimension so we will have to create a dynamic function.
- We will create a function that will accept the rows and columns of the chess board as an input and print the the pattern.
- We will use nested loops to print the pattern, In each row we will check if the current iteration is odd then will start the pattern with
' '
else we will start with'#'
. - In the inner loop we will check if the current pattern is
'#'
then swap it with' '
and vice versa. - Join the pattern together and print them after the end of the inner loop.
- Repeat this for each row.
let chessboard = (row, column) => { for(let i = 0; i < row; i++){ //If odd then start with ' ' //Else start with '#' let start = i % 2 === 1 ? ' ' : '#'; //Temp str to stor the pattern of the column let str = ''; for(let j = 0; j < column; j++){ //Swap current pattern with another one in each iteration start = start == '#' ? ' ' : '#'; str += start; } //Print the pattern for the current row console.log(str); } }
Input: chessboard(3, 5); chessboard(8, 8); Output: " # # " "# # #" " # # " " # # # #" "# # # # " " # # # #" "# # # # " " # # # #" "# # # # " " # # # #" "# # # # "
Time complexity: O(m * n).
Space complexity: O(1).
Time and Space complexity
- We are print the pattern for each row and all columns, so Time complexity is O(m * n) where m is the no of rows and n is the no of columns.
- We are using constant space, so Space complexity is O(1).