|
25 | 25 |
|
26 | 26 | public class _10 {
|
27 | 27 |
|
28 |
| - public boolean isMatch(String s, String p) { |
29 |
| - if (s == null || p == null) { |
30 |
| - return false; |
31 |
| - } |
32 |
| - boolean[][] dp = new boolean[s.length() + 1][p.length() + 1]; |
33 |
| - dp[0][0] = true; |
34 |
| - for (int i = 0; i < p.length(); i++) { |
35 |
| - if (p.charAt(i) == '*' && dp[0][i - 1]) { |
36 |
| - dp[0][i + 1] = true; |
| 28 | + public static class Solution1 { |
| 29 | + public boolean isMatch(String s, String p) { |
| 30 | + if (s == null || p == null) { |
| 31 | + return false; |
37 | 32 | }
|
38 |
| - } |
39 |
| - for (int i = 0; i < s.length(); i++) { |
40 |
| - for (int j = 0; j < p.length(); j++) { |
41 |
| - if (p.charAt(j) == '.' || p.charAt(j) == s.charAt(i)) { |
42 |
| - dp[i + 1][j + 1] = dp[i][j]; |
| 33 | + boolean[][] dp = new boolean[s.length() + 1][p.length() + 1]; |
| 34 | + dp[0][0] = true; |
| 35 | + for (int i = 0; i < p.length(); i++) {//here's the p's length, not s's |
| 36 | + if (p.charAt(i) == '*' && dp[0][i - 1]) { |
| 37 | + dp[0][i + 1] = true;//here's y axis should be i+1 |
43 | 38 | }
|
44 |
| - if (p.charAt(j) == '*') { |
45 |
| - if (p.charAt(j - 1) != s.charAt(i) && p.charAt(j - 1) != '.') { |
46 |
| - dp[i + 1][j + 1] = dp[i + 1][j - 1]; |
47 |
| - } else { |
48 |
| - dp[i + 1][j + 1] = (dp[i + 1][j] || dp[i][j + 1] || dp[i + 1][j - 1]); |
| 39 | + } |
| 40 | + for (int i = 0; i < s.length(); i++) { |
| 41 | + for (int j = 0; j < p.length(); j++) { |
| 42 | + if (p.charAt(j) == '.' || p.charAt(j) == s.charAt(i)) { |
| 43 | + dp[i + 1][j + 1] = dp[i][j]; |
| 44 | + } |
| 45 | + if (p.charAt(j) == '*') { |
| 46 | + if (p.charAt(j - 1) != s.charAt(i) && p.charAt(j - 1) != '.') { |
| 47 | + dp[i + 1][j + 1] = dp[i + 1][j - 1]; |
| 48 | + } else { |
| 49 | + dp[i + 1][j + 1] = (dp[i + 1][j] || dp[i][j + 1] || dp[i + 1][j - 1]); |
| 50 | + } |
49 | 51 | }
|
50 | 52 | }
|
51 | 53 | }
|
| 54 | + return dp[s.length()][p.length()]; |
52 | 55 | }
|
53 |
| - return dp[s.length()][p.length()]; |
54 | 56 | }
|
55 | 57 |
|
56 | 58 | }
|
0 commit comments