4
4
// #2024_11_11_Time_1_ms_(99.77%)_Space_44.8_MB_(61.16%)
5
5
6
6
import java.util.ArrayList;
7
+ import java.util.LinkedList;
7
8
import java.util.List;
8
9
9
10
public class Solution {
10
- public static List<List<String>> solveNQueens(int n) {
11
+ public List<List<String>> solveNQueens(int n) {
11
12
char[][] board = new char[n][n];
12
13
for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) board[i][j] = '.';
13
14
List<List<String>> res = new ArrayList<List<String>>();
14
- int leftRow[] = new int[n];
15
- int upperDiagonal[] = new int[2 * n - 1];
16
- int lowerDiagonal[] = new int[2 * n - 1];
15
+ int[] leftRow = new int[n];
16
+ int[] upperDiagonal = new int[2 * n - 1];
17
+ int[] lowerDiagonal = new int[2 * n - 1];
17
18
solve(0, board, res, leftRow, lowerDiagonal, upperDiagonal);
18
19
return res;
19
20
}
@@ -22,9 +23,9 @@ void solve(
22
23
int col,
23
24
char[][] board,
24
25
List<List<String>> res,
25
- int leftRow[] ,
26
- int lowerDiagonal[] ,
27
- int upperDiagonal[] ) {
26
+ int[] leftRow ,
27
+ int[] lowerDiagonal ,
28
+ int[] upperDiagonal ) {
28
29
if (col == board.length) {
29
30
res.add(construct(board));
30
31
return;
@@ -48,9 +49,9 @@ void solve(
48
49
}
49
50
50
51
List<String> construct(char[][] board) {
51
- List<String> res = new LinkedList<String >();
52
- for (int i = 0; i < board.length; i++ ) {
53
- String s = new String(board[i] );
52
+ List<String> res = new LinkedList<>();
53
+ for (char[] chars : board) {
54
+ String s = new String(chars );
54
55
res.add(s);
55
56
}
56
57
return res;
0 commit comments