c#题例-2025-08-20 03:53:05
日期: 2025-08-20 分类: AI写作 8次阅读
编写一个C#程序,实现一个支持通配符匹配的函数,用于判断给定的字符串是否与另一个字符串匹配。规则如下:
- 字符串和模式串均只包含小写英文字母和以下两个通配符:
- `.` 匹配任意单个字符。
- `*` 匹配零个或多个前一个字符(即星号前的字符)。
- `*` 的使用方式与正则表达式中一致,保证模式中不会出现连续的 `*`。
- 你的函数需要支持完整的字符串匹配,即整个输入字符串必须与模式完全匹配,而不是部分匹配。
请实现函数签名:
```csharp
bool IsMatch(string input, string pattern);
```
**示例:**
```csharp
IsMatch("aab", "c*a*b") => true
IsMatch("ab", ".*") => true
IsMatch("ab", ".*c") => false
IsMatch("aaa", "a*a") => true
IsMatch("aaa", "a*aa") => true
IsMatch("abcd", "d*") => false
```
**要求:**
- 不能使用 .NET 中的正则表达式类(如 Regex)。
- 时间复杂度尽量优化,能处理较长的输入字符串。
- 需要考虑边界情况和异常输入的处理。
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
标签:AI写作
精华推荐