Posts

Showing posts from May, 2021

N-Queen Arrangement Problem [Backtracking]

 Programming Language - Java public static boolean saveTheQueen( int [][] board , int col) { if (col>= board.length) return true; for ( int row= 0 ; row< board.length ; row++) { /* Constrains */ if (diagonals(board , row , col)) { board[row][col] = 1 ; /* Recursion */ if (saveTheQueen(board , col+ 1 )) return true; /* Backtracking */ board[row][col] = 0 ; } } return false; } static boolean diagonals( int [][] board , int row , int col) { for ( int i= 0 ; i<col ; i++) if (board[row][i] == 1 ) return false; for ( int x=row , y=col ; x>= 0 && y>= 0 ; x-- , y--) if (board[x][y] == 1 ) return false; for ( int x=row , y=col ; y>= 0 && x<board.length ; x++ , y--) if (board[x][y] == 1 ) return false; return true; }