Young87

SmartCat's Blog

So happy to code my life!

当前位置:首页 >AI写作

c#题例-2025-09-05 20:19:51

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

- 函数签名为 `bool IsMatch(string s, string p)`,其中 `s` 是目标字符串,`p` 是包含通配符的模式字符串。
- 支持以下模式规则:
- `'?'` 匹配任意单个字符。
- `'*'` 匹配任意字符序列(包括空序列)。
- 匹配必须覆盖整个目标字符串(即不能部分匹配)。

要求:
1. 不能使用正则表达式(Regex)相关类或方法。
2. 时间复杂度需优于 O(n^3)(即不能使用暴力递归)。
3. 使用动态规划优化时间效率,并尽可能降低空间复杂度。

示例:
```csharp
IsMatch("aa", "a") // 返回 false
IsMatch("aa", "*") // 返回 true
IsMatch("cb", "?a") // 返回 false
IsMatch("abceb", "a*b") // 返回 true
IsMatch("abc", "a?c") // 返回 true
```

请写出完整代码并解释其逻辑。

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

上一篇: c#题例-2025-09-06 01:53:11

下一篇: c#题例-2025-09-05 13:33:01

精华推荐