Young87

SmartCat's Blog

So happy to code my life!

当前位置:首页 >AI写作

c#题例-2025-09-10 09:33:17

编写一个C#程序,实现一个支持通配符匹配的函数,满足以下要求:

实现函数 `bool IsMatch(string text, string pattern)`,该函数返回 `true` 当且仅当字符串 `text` 能与给定的正则表达式 `pattern` 匹配时。
支持以下规则:

- 字符 `.` 匹配任何一个单一字符;
- 符号 `*` 表示前面的一个字符可以被重复0次或多次(贪婪匹配);
- `*` 前面的字符可以是普通字符或 `.`;
- 匹配应覆盖整个输入字符串,部分匹配应返回 `false`。

例如:

```csharp
IsMatch("aa", "a*") // 应返回 true
IsMatch("aab", "c*a*b") // 应返回 true
IsMatch("ab", ".*") // 应返回 true
IsMatch("aab", "ab*c") // 应返回 false
```

要求:
1. 不使用任何正则表达式库;
2. 实现动态规划优化版本,时间复杂度尽量优化到 O(m × n),其中 m 和 n 分别为 `text` 和 `pattern` 的长度;
3. 写出测试用例验证你的代码逻辑是否正确。

除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog

上一篇:无

下一篇: c#题例-2025-09-10 03:59:51

精华推荐