Young87

SmartCat's Blog

So happy to code my life!

游戏开发交流QQ群号60398951

当前位置:首页 >AI写作

c#题例-2025-08-31 17:34:14

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

- 函数签名:`bool IsMatch(string text, string pattern)`
- 支持以下通配符语义:
- `'.'` 匹配任意单个字符
- `'*'` 匹配前面的元素(即前一个字符或 `'.'`)零次或多次,且匹配规则为贪婪最长匹配
- 匹配需覆盖整个输入字符串(即必须完全匹配)

示例:
```csharp
IsMatch("aa", "a") // false
IsMatch("aa", "a*") // true
IsMatch("ab", ".*") // true
IsMatch("aab", "c*a*b") // true
IsMatch("aab", "a*b") // false
IsMatch("abcd", "a.*d") // true
```

要求:
- 不使用正则表达式库(如 `System.Text.RegularExpressions`)
- 实现高效的匹配算法,时间复杂度尽量控制在 O(m × n),其中 m 和 n 分别为字符串和模式的长度
- 考虑边界情况和复杂嵌套 `*` 的情况

请写出该函数的完整实现及测试用例。

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

上一篇: c#题例-2025-09-01 00:20:09

下一篇: c#题例-2025-08-31 12:00:55

精华推荐