12周刷题大作战

继续努力!
今天有些乏,出现了思维惰性,不知道是因为没有休息好,还是做了五天题有些累了。也许可以试试以后周一到周五正常刷题,周六休息,周日复习这一周的题。

boolean[]

boolean[] array = new boolean[size];
所有默认值为false;

LeetCode - 36 (0 Easy, 1 Medium, 0 Hard)

36. Valid Sudoku - Medium

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
class  {
public boolean isValidSudoku(char[][] board) {


for(int i=0; i < 9; i++){
boolean[] set = new boolean[9];
for(int j=0; j<9; j++){
char num = board[i][j];
if( '1'<=num && num<='9'){
if(set[num - '1']){
return false;
}else{
set[num - '1']=true;
}
}else if(num != '.'){
return false;
}
}
}

// col
for(int i=0; i < 9; i++){
boolean[] set = new boolean[9];
for(int j=0; j<9; j++){
char num = board[j][i];
if( '1'<=num && num<='9'){
if(set[num - '1']){
return false;
}else{
set[num - '1']=true;
}
}else if(num != '.'){
return false;
}
}
}

// 九宫格
for(int daHang = 0; daHang <3; daHang++){
for(int daLie = 0; daLie <3; daLie++){
boolean[] set = new boolean[9];
for(int i=0; i < 3; i++){
for(int j=0; j<3; j++){
char num = board[daHang*3+i][daLie*3+j];
if( '1'<=num && num<='9'){
if(set[num - '1']){
return false;
}else{
set[num - '1']=true;
}
}else if(num != '.'){
return false;
}
}
}
}
}
return true;
}
}