题目描述

请实现一个函数用来匹配包括’.‘和’‘的正则表达式。模式中的字符’.‘表示任意一个字符,而’'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"abaca"匹配,但是与"aa.a"和"ab*a"均不匹配

解题思路

class Solution {
public:bool match(char* str, char* pattern){if(str[0]==0 && pattern[0]==0) return true;if(str[0]!=0 && pattern[0]==0) return false;if(pattern[1]=='*' ){if((pattern[0]=='.' && str[0])||str[0]==pattern[0]) {return match(str+1,pattern+2) || // move on the next statematch(str+1,pattern) || // state on the current statematch(str,pattern+2); // ignore a '*'}else return match(str,pattern+2);}if(str[0]==pattern[0] || (pattern[0]=='.' && str[0])){if(match(str+1, pattern+1)) return true;//if (pattern[1] == '*' && match(str + 1, pattern)) true;}return false;}
};

剑指offer:正则表达式匹配相关推荐

  1. 剑指OFFER——正则表达式匹配

    请实现一个函数用来匹配包括'.'和'*'的正则表达式.模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次). 在本题中,匹配是指字符串的所有字符匹配整个模式.例如,字 ...

  2. 剑指Offer_52_正则表达式匹配

    题目描述 请实现一个函数用来匹配包括'.'和''的正则表达式.模式中的字符'.'表示任意一个字符,而''表示它前面的字符可以出现任意次(包含0次). 在本题中,匹配是指字符串的所有字符匹配整个模式.例 ...

  3. 道指mt4代码_剑指offer算法题052:正则表达式匹配

    小编在求职找找工作期间剑指offer上的算法题刷了很多遍,并且每道题小编当时都总结了一种最适合面试时手撕算法的最优解法.考虑到剑指offer算法题在面试中的高频出现,小编每天和大家分享一道剑指offe ...

  4. 【LeetCode】剑指 Offer 19. 正则表达式匹配

    [LeetCode]剑指 Offer 19. 正则表达式匹配 文章目录 [LeetCode]剑指 Offer 19. 正则表达式匹配 package offer;public class Soluti ...

  5. 【重点】剑指offer——面试题53:正则表达式匹配

    剑指offer--面试题53:正则表达式匹配 这个属于不是那么好做的题目之一...参考网址:https://www.nowcoder.com/profile/3639006/codeBookDetai ...

  6. 剑指 Offer 19. 正则表达式匹配 regex_match() regex()

    一. 题目: 剑指 Offer 19. 正则表达式匹配 请实现一个函数用来匹配包含'. '和''的正则表达式.模式中的字符'.'表示任意一个字符,而''表示它前面的字符可以出现任意次(含0次).在本题 ...

  7. 剑指 Offer 19. 正则表达式匹配

    剑指 Offer 19. 正则表达式匹配 https://leetcode-cn.com/problems/zheng-ze-biao-da-shi-pi-pei-lcof/ 请实现一个函数用来匹配包 ...

  8. 算法Day8|字符串专题二 剑指 Offer 58 - II. 左旋转字符串,28. 找出字符串中第一个匹配项的下标,459. 重复的子字符串

    剑指 Offer 58 - II. 左旋转字符串 解题思路: 反转区间为前n的子串 反转区间为n到末尾的子串 反转整个字符串 class Solution {public String reverse ...

  9. 剑指offer第二版答案详细版(带详细解题思路)

    1.滑动窗口的最大值(剑指offer原59题) 解题思路:其实是一个队列的问题,用一个队列去维护当前窗口中的所有元素:首先将超出窗口中的队头元素先删掉,然后将新的元素插入当前窗口中,插入时要判断新插入 ...

  10. 剑指offer之题解目录(全)

    剑指offer之题解目录(全) 3. 从尾到头打印链表 4. 重建二叉树 5. 用两个栈实现队列 6. 旋转数组的最小数字 7. 斐波那契数列 8. 跳台阶 9. 变态跳台阶 10. 矩阵覆盖 11. ...

最新文章

  1. [微信小程序]计算自己手机到指定位置的距离
  2. Codeforces 358 D. Dima and Hares
  3. 全局稳定性收敛平衡点为0吗_「模型解读」GoogLeNet中的inception结构,你看懂了吗...
  4. 我国网民规模已达7.51亿 但网络安全值得警惕
  5. ZooKeeper第三方客户端CuratorFramework简介
  6. python的replace第i个位置_《原神》第80个绯红玉髓位置一览 第80个绯红玉髓如何获取...
  7. C++类的组合和前向引用
  8. /IWBEP/CX_MGW_TECH_EXCEPTION - expand issue for old service on Docu history node
  9. 单一登录云:SAML和OpenId
  10. [华为机试练习题]60.水仙花数
  11. 居家隔离14+7天的第三天 2021年8月1日15:49:09
  12. 手持“六脉神剑”、横跨软硬领域,揭晓英特尔构筑智慧云基石宝典!
  13. [面试] 算法(二)—— 第一个出现一次的字符(第一个出现 k 次、出现最多次)
  14. 老男孩python14期全套-老男孩第十四期Python学习班之Day01
  15. python操作腾讯文档_Python操作Excel文档
  16. 刻录DVD9光盘内容至DVD5 DVD-R盘指南
  17. 查看当前计算机CPU架构
  18. 轻松安装、卸载Linux软件
  19. 小巧的menuetOS
  20. android zip格式的ndk,Android 使用NDK (JNI)容易解压7z压缩文件

热门文章

  1. 《Python面向对象编程指南》——1.2 基类中的__init__()方法
  2. Objective-c 实用代码
  3. 测试Animation大型动画文件拆分播放的可行性
  4. Oracle 表的访问方式(2)-----索引扫描
  5. 无需u盘和光盘安装linux
  6. libgdx 学习笔记一 开发环境搭建
  7. 总结一下“网络连接受限制”无法上网的解决办法
  8. 二叉树前序遍历-递归与非递归
  9. 详解可视化利器 t-SNE 算法:数无形时少直觉
  10. 2020-09-09学习OpenCV4:OpenCV-4.1.0+VS2017 编译(包含扩展)