Young87

SmartCat's Blog

So happy to code my life!

游戏开发交流QQ群号60398951

当前位置:首页 >AI写作

c#题例-2025-08-21 20:00:50

编写一个C#程序,实现一个支持通配符匹配的函数,用于判断给定的字符串是否匹配指定的模式。模式中支持以下两种通配符:

- `?` 匹配任意单个字符
- `*` 匹配任意字符序列(包括空序列)

函数签名如下:

```csharp
bool IsMatch(string input, string pattern)
```

要求:

1. 不能使用正则表达式(Regex)或任何第三方库。
2. 必须处理所有边界情况,例如多个连续的 `*`、`?` 匹配任意字符等。
3. 时间复杂度尽量优化,避免暴力递归导致超时。

示例:

```csharp
IsMatch("hello", "h*o") // 返回 true
IsMatch("hello", "he?lo") // 返回 true
IsMatch("hello", "h*ll*") // 返回 true
IsMatch("hello", "h?llo") // 返回 false
IsMatch("hello", "h*world") // 返回 false
IsMatch("", "*") // 返回 true
IsMatch("", "a*") // 返回 false
```

请写出完整实现并解释其逻辑。

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

上一篇:无

下一篇: c#题例-2025-08-21 14:27:40

精华推荐