当前位置:   article > 正文

Java | Leetcode Java题解之第132题分割回文串II

Java | Leetcode Java题解之第132题分割回文串II

题目:

题解:

  1. class Solution {
  2. public int minCut(String s) {
  3. int n = s.length();
  4. boolean[][] g = new boolean[n][n];
  5. for (int i = 0; i < n; ++i) {
  6. Arrays.fill(g[i], true);
  7. }
  8. for (int i = n - 1; i >= 0; --i) {
  9. for (int j = i + 1; j < n; ++j) {
  10. g[i][j] = s.charAt(i) == s.charAt(j) && g[i + 1][j - 1];
  11. }
  12. }
  13. int[] f = new int[n];
  14. Arrays.fill(f, Integer.MAX_VALUE);
  15. for (int i = 0; i < n; ++i) {
  16. if (g[0][i]) {
  17. f[i] = 0;
  18. } else {
  19. for (int j = 0; j < i; ++j) {
  20. if (g[j + 1][i]) {
  21. f[i] = Math.min(f[i], f[j] + 1);
  22. }
  23. }
  24. }
  25. }
  26. return f[n - 1];
  27. }
  28. }
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/707183
推荐阅读
相关标签
  

闽ICP备14008679号