c#题例-2025-09-10 09:33:17
日期: 2025-09-10 分类: AI写作 9次阅读
编写一个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
标签:AI写作
精华推荐