From 8f754ac742284829719d4f531bbdb958377dc064 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B7=A6=E7=A8=8B=E4=BA=91?= Date: Thu, 31 Dec 2020 16:06:53 +0800 Subject: [PATCH] modify code --- src/class19/Code02_PalindromeSubsequence.java | 79 +++++++++++++----- src/class19/Code03_HorseJump.java | 6 -- .../Code01_CoinsWayEveryPaperDifferent.java | 5 +- src/class20/Code02_CoinsWayNoLimit.java | 2 - .../Code03_CoinsWaySameValueSamePapper.java | 3 - src/class20/Code04_MinCoinsOnePaper.java | 2 - src/class20/Code05_MinCoinsNoLimit.java | 2 - src/class21/Code02_KillMonster.java | 1 - src/class21/Code03_SplitSumClosed.java | 6 -- .../Code04_SplitSumClosedSizeHalf.java | 9 -- src/class21/Code05_NQueens.java | 32 ++----- src/class21/KillMonster.jpeg | Bin 73708 -> 0 bytes 12 files changed, 64 insertions(+), 83 deletions(-) delete mode 100644 src/class21/KillMonster.jpeg diff --git a/src/class19/Code02_PalindromeSubsequence.java b/src/class19/Code02_PalindromeSubsequence.java index 90d93ed..94cf109 100644 --- a/src/class19/Code02_PalindromeSubsequence.java +++ b/src/class19/Code02_PalindromeSubsequence.java @@ -1,38 +1,75 @@ package class19; +// 测试链接:https://leetcode.com/problems/longest-palindromic-subsequence/ public class Code02_PalindromeSubsequence { - public static int lcse(char[] str1, char[] str2) { - - - - - int[][] dp = new int[str1.length][str2.length]; - - - + public static int longestPalindromeSubseq1(String s) { + if (s == null || s.length() == 0) { + return 0; + } + if (s.length() == 1) { + return 1; + } + char[] str = s.toCharArray(); + char[] reverse = reverse(str); + return longestCommonSubsequence(str, reverse); + } + + public static char[] reverse(char[] str) { + int N = str.length; + char[] reverse = new char[str.length]; + for (int i = 0; i < str.length; i++) { + reverse[--N] = str[i]; + } + return reverse; + } + + public static int longestCommonSubsequence(char[] str1, char[] str2) { + int N = str1.length; + int M = str2.length; + int[][] dp = new int[N][M]; dp[0][0] = str1[0] == str2[0] ? 1 : 0; - - - for (int i = 1; i < str1.length; i++) { - dp[i][0] = Math.max(dp[i - 1][0], str1[i] == str2[0] ? 1 : 0); + for (int i = 1; i < N; i++) { + dp[i][0] = str1[i] == str2[0] ? 1 : dp[i - 1][0]; } - for (int j = 1; j < str2.length; j++) { - dp[0][j] = Math.max(dp[0][j - 1], str1[0] == str2[j] ? 1 : 0); + for (int j = 1; j < M; j++) { + dp[0][j] = str1[0] == str2[j] ? 1 : dp[0][j - 1]; } - for (int i = 1; i < str1.length; i++) { - for (int j = 1; j < str2.length; j++) { + for (int i = 1; i < N; i++) { + for (int j = 1; j < M; j++) { dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]); if (str1[i] == str2[j]) { dp[i][j] = Math.max(dp[i][j], dp[i - 1][j - 1] + 1); - } + } } } - return dp[str1.length - 1][str2.length - 1]; + return dp[N - 1][M - 1]; } - public static void main(String[] args) { - + public static int longestPalindromeSubseq2(String s) { + if (s == null || s.length() == 0) { + return 0; + } + if (s.length() == 1) { + return 1; + } + char[] str = s.toCharArray(); + int N = str.length; + int[][] dp = new int[N][N]; + dp[N - 1][N - 1] = 1; + for (int i = 0; i < N - 1; i++) { + dp[i][i] = 1; + dp[i][i + 1] = str[i] == str[i + 1] ? 2 : 1; + } + for (int i = N - 3; i >= 0; i--) { + for (int j = i + 2; j < N; j++) { + dp[i][j] = Math.max(dp[i][j - 1], dp[i + 1][j]); + if (str[i] == str[j]) { + dp[i][j] = Math.max(dp[i][j], dp[i + 1][j - 1] + 2); + } + } + } + return dp[0][N - 1]; } } diff --git a/src/class19/Code03_HorseJump.java b/src/class19/Code03_HorseJump.java index f48df78..a560edd 100644 --- a/src/class19/Code03_HorseJump.java +++ b/src/class19/Code03_HorseJump.java @@ -2,15 +2,10 @@ package class19; public class Code03_HorseJump { - // 10*9 - // 0~9 y - // 0~8 x public static int ways(int a, int b, int step) { return f(0, 0, step, a, b); } - // 马在(i,j)位置,还有step步要去跳 - // 返回最终来到(a,b)的方法数 public static int f(int i, int j, int step, int a, int b) { if (i < 0 || i > 9 || j < 0 || j > 8) { return 0; @@ -31,7 +26,6 @@ public class Code03_HorseJump { public static int waysdp(int a, int b, int s) { - // (i,j,0~ step) int[][][] dp = new int[10][9][s+1]; dp[a][b][0] = 1; for(int step = 1 ; step <= s;step++ ) { // 按层来 diff --git a/src/class20/Code01_CoinsWayEveryPaperDifferent.java b/src/class20/Code01_CoinsWayEveryPaperDifferent.java index 3cf9b71..008910d 100644 --- a/src/class20/Code01_CoinsWayEveryPaperDifferent.java +++ b/src/class20/Code01_CoinsWayEveryPaperDifferent.java @@ -1,8 +1,5 @@ package class20; -// arr是货币数组,其中的值都是正数,每个值都认为是一张货币, -// 即便是值相同的货币认为每一张都是独立且不同的, -// 返回组成aim的方法数 public class Code01_CoinsWayEveryPaperDifferent { public static int coinWays(int[] arr, int aim) { @@ -64,7 +61,7 @@ public class Code01_CoinsWayEveryPaperDifferent { int aim = (int) (Math.random() * maxValue); int ans1 = coinWays(arr, aim); int ans2 = dp(arr, aim); - if (ans1 == ans2) { + if (ans1 != ans2) { System.out.println("Oops!"); printArray(arr); System.out.println(aim); diff --git a/src/class20/Code02_CoinsWayNoLimit.java b/src/class20/Code02_CoinsWayNoLimit.java index c52ca70..95dd573 100644 --- a/src/class20/Code02_CoinsWayNoLimit.java +++ b/src/class20/Code02_CoinsWayNoLimit.java @@ -1,7 +1,5 @@ package class20; -// arr是面值数组,其中的值都是正数且无重复值, -// 每张面值可以用无限张,返回组成aim的方法数 public class Code02_CoinsWayNoLimit { public static int coinsWay(int[] arr, int aim) { diff --git a/src/class20/Code03_CoinsWaySameValueSamePapper.java b/src/class20/Code03_CoinsWaySameValueSamePapper.java index ad316c7..357fb37 100644 --- a/src/class20/Code03_CoinsWaySameValueSamePapper.java +++ b/src/class20/Code03_CoinsWaySameValueSamePapper.java @@ -3,9 +3,6 @@ package class20; import java.util.HashMap; import java.util.Map.Entry; -// arr是货币数组,其中的值都是正数,每个值都认为是一张货币, -// 值相同的货币认为每一张都没有不同! -// 返回组成aim的方法数 public class Code03_CoinsWaySameValueSamePapper { public static class Info { diff --git a/src/class20/Code04_MinCoinsOnePaper.java b/src/class20/Code04_MinCoinsOnePaper.java index 23958f9..02e48a1 100644 --- a/src/class20/Code04_MinCoinsOnePaper.java +++ b/src/class20/Code04_MinCoinsOnePaper.java @@ -4,8 +4,6 @@ import java.util.HashMap; import java.util.Map.Entry; import java.util.LinkedList; -// arr中的每个值都代表一张钱 -// arr中都是正数,aim>=0,返回组成aim的最小张数 public class Code04_MinCoinsOnePaper { public static int minCoins(int[] arr, int aim) { diff --git a/src/class20/Code05_MinCoinsNoLimit.java b/src/class20/Code05_MinCoinsNoLimit.java index cb0f19c..b41ad45 100644 --- a/src/class20/Code05_MinCoinsNoLimit.java +++ b/src/class20/Code05_MinCoinsNoLimit.java @@ -1,7 +1,5 @@ package class20; -// arr是面值数组,其中的值都是正数且无重复值, -// 每张面值可以用无限张,返回组成aim的最少货币数 public class Code05_MinCoinsNoLimit { public static int minCoins(int[] arr, int aim) { diff --git a/src/class21/Code02_KillMonster.java b/src/class21/Code02_KillMonster.java index 191dcbc..fbc2871 100644 --- a/src/class21/Code02_KillMonster.java +++ b/src/class21/Code02_KillMonster.java @@ -1,6 +1,5 @@ package class21; -// 题目描述看包里KillMonster.jpeg public class Code02_KillMonster { public static double right1(int N, int M, int K) { diff --git a/src/class21/Code03_SplitSumClosed.java b/src/class21/Code03_SplitSumClosed.java index e8eccfd..c9bb573 100644 --- a/src/class21/Code03_SplitSumClosed.java +++ b/src/class21/Code03_SplitSumClosed.java @@ -2,12 +2,6 @@ package class21; import java.util.TreeSet; -/* - * 给定一个整型数组arr,请把arr中所有的数分成两个集合,尽量让两个集合的累加和接近 - * 返回最接近的情况下,较小集合的累加和(较大集合的累加和一定是所有数累加和减去较小集合的累加和) - * 为了方便起见,假设arr中没有负数,其实也可以有 - * 但是处理起来会比较麻烦,而且有没有负数都不影响算法流程的理解 - * */ public class Code03_SplitSumClosed { public static int right(int[] arr) { diff --git a/src/class21/Code04_SplitSumClosedSizeHalf.java b/src/class21/Code04_SplitSumClosedSizeHalf.java index a652fe4..bdfffff 100644 --- a/src/class21/Code04_SplitSumClosedSizeHalf.java +++ b/src/class21/Code04_SplitSumClosedSizeHalf.java @@ -2,15 +2,6 @@ package class21; import java.util.TreeSet; -/* - * 给定一个整型数组arr,请把arr中所有的数分成两个集合 - * 如果arr长度为偶数,两个集合包含数的个数要一样多 - * 如果arr长度为奇数,两个集合包含数的个数必须只差一个 - * 请尽量让两个集合的累加和接近 - * 返回最接近的情况下,较小集合的累加和(较大集合的累加和一定是所有数累加和减去较小集合的累加和) - * 为了方便起见,假设arr中没有负数,其实也可以有 - * 但是处理起来会比较麻烦,而且有没有负数都不影响算法流程的理解 - * */ public class Code04_SplitSumClosedSizeHalf { public static int right(int[] arr) { diff --git a/src/class21/Code05_NQueens.java b/src/class21/Code05_NQueens.java index e8aab39..de49c7a 100644 --- a/src/class21/Code05_NQueens.java +++ b/src/class21/Code05_NQueens.java @@ -6,26 +6,16 @@ public class Code05_NQueens { if (n < 1) { return 0; } - // record[0] ? record[1] ? record[2] - int[] record = new int[n]; // record[i] -> i行的皇后,放在了第几列 + int[] record = new int[n]; return process1(0, record, n); } - // 潜台词:record[0..i-1]的皇后,任何两个皇后一定都不共行、不共列,不共斜线 - // 目前来到了第i行 - // record[0..i-1]表示之前的行,放了的皇后位置 - // n代表整体一共有多少行 0~n-1行 - // 返回值是,摆完所有的皇后,合理的摆法有多少种 public static int process1(int i, int[] record, int n) { - if (i == n) { // 终止行 + if (i == n) { return 1; } - // 没有到终止位置,还有皇后要摆 int res = 0; - for (int j = 0; j < n; j++) { // 当前行在i行,尝试i行所有的列 -> j - // 当前i行的皇后,放在j列,会不会和之前(0..i-1)的皇后,不共行共列或者共斜线, - // 如果是,认为有效 - // 如果不是,认为无效 + for (int j = 0; j < n; j++) { if (isValid(record, i, j)) { record[i] = j; res += process1(i + 1, record, n); @@ -34,11 +24,8 @@ public class Code05_NQueens { return res; } - // record[0..i-1]你需要看,record[i...]不需要看 - // 返回i行皇后,放在了j列,是否有效 public static boolean isValid(int[] record, int i, int j) { - for (int k = 0; k < i; k++) { // 之前的某个k行的皇后 - // k, record[k] i, j + for (int k = 0; k < i; k++) { if (j == record[k] || Math.abs(record[k] - j) == Math.abs(i - k)) { return false; } @@ -56,27 +43,18 @@ public class Code05_NQueens { return process2(limit, 0, 0, 0); } - // limit 划定了问题的规模 -> 固定 - - // colLim 列的限制,1的位置不能放皇后,0的位置可以 - // leftDiaLim 左斜线的限制,1的位置不能放皇后,0的位置可以 - // rightDiaLim 右斜线的限制,1的位置不能放皇后,0的位置可以 public static int process2( int limit, int colLim, int leftDiaLim, int rightDiaLim) { - if (colLim == limit) { // base case + if (colLim == limit) { return 1; } - // 所有可以放皇后的位置,都在pos上 - // colLim | leftDiaLim | rightDiaLim -> 总限制 - // ~ (colLim | leftDiaLim | rightDiaLim) -> 左侧的一坨0干扰,右侧每个1,可尝试 int pos = limit & ( ~(colLim | leftDiaLim | rightDiaLim) ); int mostRightOne = 0; int res = 0; while (pos != 0) { - // 其取出pos中,最右侧的1来,剩下位置都是0 mostRightOne = pos & (~pos + 1); pos = pos - mostRightOne; res += process2(limit, diff --git a/src/class21/KillMonster.jpeg b/src/class21/KillMonster.jpeg deleted file mode 100644 index 5e69a2b639d96de73d8d9b128a8a1c83ced6020f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73708 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