zoukankan      html  css  js  c++  java
  • 通配符匹配_leetcode44

     

     

     

     

    bool isMatch(char* s, char* p) {
       int m=strlen(s);
       int n=strlen(p);
       int dp[m+1][n+1];
       memset(dp,0,sizeof(dp));
       dp[0][0]=true;
       int i,j;
    //对边界问题进行处理
       for(i=1;i<=n;i++)
       {
           if(p[i-1]=='*')
           {
               dp[0][i]=true;
           }
           else
           {
               break;
           }
       }
       for(i=1;i<=m;i++)
       {
           for(j=1;j<=n;j++){
               /*
               if(p[j-1]=='*')     //比较*的情况
               {
                   dp[i][j]=dp[i][j-1]|dp[i-1][j];
               }
               else
               */
               if(p[j-1]=='?'||s[i-1]==p[j-1])  //比较?和全字母的情况
               {
                   dp[i][j]=dp[i-1][j-1];
               }
               else if(p[j-1]=='*')
               {
                   dp[i][j]=dp[i][j-1]|dp[i-1][j];
               }

           }
       }
       return dp[m][n];
    }
  • 相关阅读:
    python条件判断之直接加数字
    pythontip题目解答
    twitter api取出的日期格式化
    MySQL Archive存储引擎
    Python Json序列化
    Python 装饰器
    Python 匿名函数
    Python 函数
    Python 字符编码
    Python 文件操作
  • 原文地址:https://www.cnblogs.com/sbb-first-blog/p/13252476.html
Copyright © 2011-2022 走看看