当前位置: 首页 > news >正文

酒店网站怎么做网页设计重庆

酒店网站怎么做,网页设计重庆,房屋建筑设计师哪里找,网页设计与网站建设的报告一、题目概述 二、思路方向 在Java中,实现一个支持.和*的正则表达式匹配器,可以通过递归或动态规划(DP)的方法来完成。这里,我将使用动态规划的方法来解决这个问题,因为它更容易理解和实现。 动态规划的思…

一、题目概述

二、思路方向 

       在Java中,实现一个支持'.'和'*'的正则表达式匹配器,可以通过递归或动态规划(DP)的方法来完成。这里,我将使用动态规划的方法来解决这个问题,因为它更容易理解和实现。

       动态规划的思路是,我们可以创建一个二维的布尔数组dp,其中dp[i][j]表示字符串s的前i个字符和模式p的前j个字符是否匹配。初始化时,dp[0][0]true(空字符串和空模式匹配),而dp[0][j](对于所有j > 0)只有在p的前j个字符都是*时才为true,因为*可以匹配零个字符。

       接下来,我们遍历dp数组,填充剩余的条目。对于每个(i, j),我们考虑以下情况:

  1. 如果p[j-1]不是*,那么dp[i][j]为真当且仅当s[i-1] == p[j-1]p[j-1] == '.'dp[i-1][j-1]为真。
  2. 如果p[j-1]*,那么有两种可能性:
    • 忽略*和前面的字符,即看dp[i][j-2]
    • 匹配零个或多个前面的字符,这取决于dp[i-1][j](如果s[i-1]匹配p[j-2],则可以通过添加s[i-1]到匹配中)为真。

三、代码实现 

public class Solution {  public boolean isMatch(String s, String p) {  int m = s.length();  int n = p.length();  // 创建一个二维布尔数组dp  boolean[][] dp = new boolean[m + 1][n + 1];  dp[0][0] = true; // 空字符串和空模式匹配  // 初始化dp[0][j],只有当p全是*时才匹配  for (int j = 1; j <= n; j++) {  if (p.charAt(j - 1) == '*') {  dp[0][j] = dp[0][j - 2];  }  }  // 填充dp数组  for (int i = 1; i <= m; i++) {  for (int j = 1; j <= n; j++) {  if (p.charAt(j - 1) != '*') {  dp[i][j] = (s.charAt(i - 1) == p.charAt(j - 1) || p.charAt(j - 1) == '.') && dp[i - 1][j - 1];  } else {  // 两种情况:匹配0次或多次前面的字符  dp[i][j] = dp[i][j - 2]; // 忽略*和前面的字符  if (s.charAt(i - 1) == p.charAt(j - 2) || p.charAt(j - 2) == '.') {  dp[i][j] = dp[i][j] || dp[i - 1][j];  }  }  }  }  return dp[m][n];  }  public static void main(String[] args) {  Solution solution = new Solution();  System.out.println(solution.isMatch("aa", "a"));    // false  System.out.println(solution.isMatch("aa", "a*"));   // true  System.out.println(solution.isMatch("ab", ".*"));   // true  System.out.println(solution.isMatch("aab", "c*a*b")); // true  System.out.println(solution.isMatch("mississippi", "mis*is*p*.")); // false  }  
}

执行结果:

 四、小结 

       这个实现通过动态规划解决了正则表达式的匹配问题,时间复杂度为O(mn),空间复杂度也为O(mn),其中m和n分别是字符串s和模式p的长度。

 结语 

因为遇见你,我才知道我也能具有美丽的记忆。

所以,无论你怎样对待我,

我都会用心去宽恕你的恨

用心去铭记你的好

!!!

http://www.yayakq.cn/news/326970/

相关文章:

  • 河南省汝州市建设门户网站网站建设 app开发网站
  • 网站建设公司利润怎么样企业网站源码网
  • 合肥做网站的企业北京哪里有专门做网站的地方
  • 广州网站运营WordPress推送服务
  • 建筑网站模板丽水网站建设专业的公司
  • 东莞市建设工程质量监督网站百度营销搜索推广
  • 企业网站推广策划中等职业学校专业建设规划
  • 定制网站建设公司价格亦庄网站建设公司
  • 创意中山网站建设输入网站域名
  • 简答网站内容建设的时候内链重要性秦皇岛网站制作哪个好
  • 帮别人做钓鱼网站犯法吗简约的网站
  • wordpress多语言企业网站搜索引擎优化方法
  • 高端网站建设jm3q网站建设找导师蓝林
  • 360网站空间网页设计难学吗
  • 太原网站上排名苏州网站建站
  • 建设一个网站需要哪些材料阳江房产网签数据
  • 内蒙古两学一做网站无锡常规网络营销是什么
  • wordpress建的网站吗成都 直播网站建设
  • 企业网站建设公司 丰台自己做免费网站难吗
  • 外贸建网站免费模板抓取网站访客数据原理
  • 苏州网络网站建设中国行业信息网官网
  • 自建网站长春seo排名扣费
  • 电子 东莞网站建设网站编辑没有经验可以做吗
  • 电子商务网站建设与管理考试例题哈尔滨网站建设公司哪家好
  • 用dw做网站的教程wordpress page 自定义
  • 如何用本机电脑做网站服务器吗自助企业建站模板
  • 网做英文网站不用网络的游戏
  • 中国东盟建设集团有限公司网站黑色赚钱的网站
  • 域名服务器有哪几种北京seo案例
  • 大连做网站优化哪家好个人建网站的详细步骤