本文出处:SmartCat代码生成器
一款实用的代码生成器 希望给大家带来方便 也请大家多提需求和反馈bug http://ouchen.tech
本文出处:SmartCat代码生成器
一款实用的代码生成器 希望给大家带来方便 也请大家多提需求和反馈bug http://ouchen.tech
实现一个高效的字符串压缩算法,要求如下:- 输入一个字符数组 `char[] chars`,每个字符都是小写英文字母('a' 到 'z')。- 将其就地(in-place)压缩,压缩后的形式是:"字符+该字符连续出现的个数",例如 `'a'` 连续出现 3 次则压缩后是 `'a3'`。- 如果某个字符只出现一次,则不写入该数字,例如 `'a1'` 是非法的,应该只保留 `'a'`。- 所有字符的压缩后形式应当连续存储在输入数组的前部,并返回压缩后的长度。- 不允许使用额外的辅助数……
有一个包含100个元素的整数数组,元素值为1到100之间的数字,其中只有一个数字是重复的。请使用C#编写一个算法,在不使用额外存储空间且时间复杂度为O(n)的情况下找出这个重复的数字。
编写一个C#程序,实现一个支持通配符匹配的正则表达式引擎,支持以下规则:- 字符 `?` 可以匹配任意单个字符;- 字符 `*` 可以匹配任意内容(包括零个或多个任意字符);- 字符串起始和结束无需使用 `^` 和 `$` 显式锚定;- 匹配必须是全字符串匹配,即整个输入字符串必须匹配整个模式。例如:```IsMatch("ab", "a?") == trueIsMatch("abc", "a*") == trueIsMatch("abc", "a?c") == trueIs……
实现一个高效的对象池系统,满足以下要求:1. 对象池支持异步获取和释放对象,确保线程安全。2. 每个对象具有生命周期管理,若对象空闲时间超过指定超时时间,则自动销毁。3. 对象池支持动态扩容与缩容,根据使用情况调整池中对象数量,保持最小和最大限制。4. 提供统计功能,可实时获取当前活跃对象数、空闲对象数和创建过的对象总数。请使用C#编写一个泛型对象池类 `ObjectPool`,其中 T 是池化对象的类型,要求实现以下接口:```csharppublic interface IObjectPool{ Task GetAsync(CancellationToken cancellation……
编写一个C#程序,使用递归和动态规划两种方法实现计算斐波那契数列第n项的函数,并比较两种方法在时间效率和空间效率上的差异。要求程序能够处理n的取值范围为0到100,且在n较大时不会出现栈溢出或内存溢出问题。同时,要求函数对输入n进行有效性校验,若n为负数则抛出异常。
编写一个C#程序,使用递归和LINQ实现对一个包含嵌套子集合的异构集合进行展平(Flatten)操作,并对结果进行排序。要求如下:1. 输入为一个`object`类型的集合,其中每个元素可以是: - 一个单独的值(如整数、字符串等); - 一个`IEnumerable`对象(即子集合,可能嵌套多层)。2. 实现一个方法`FlattenAndSort`,其签名如下: ```csharp public static List FlattenAndSort(IEnumerable input) ```3. 该方法需要: - 递归地展开所有层级的嵌套集合; - 将最终的所有……
实现一个高效的字符串压缩算法,要求如下:- 输入是一个字符数组 `char[] chars`,其中每个字符为一个英文字母(A-Z,大小写不敏感)。- 压缩规则:将连续相同字符的部分替换为“字符+出现次数”。例如 `"AAAAA"` 压缩为 `"A5"`,若连续出现次数为1则只保留字符本身。- 若压缩后的长度大于等于原字符串,返回原字符串。- 必须在原地修改输入数组,并返回压缩后的有效长度。例如:```输入: ["a","a","a","b","b",&qu……
编写一个C#程序,实现一个支持通配符匹配的函数,匹配规则如下:- 输入字符串只包含小写英文字母(a-z),而模式串可能包含小写英文字母和通配符,其中: - `'?'` 可以匹配任意单个小写字母; - `'*'` 可以匹配任意字符串(包括空字符串,即不匹配任何字符)。 例如:- `"ab"` 应该与模式 `"a?"` 匹配;- `"abcde"` 应该与模式 `"a*e"` 匹配;- `"acd"` 不应与模式 `"ab*c"` 匹配。请使……
编写一个C#程序,使用递归和动态规划两种方法实现计算第n个斐波那契数(Fibonacci number),并比较两种方法在时间复杂度和空间复杂度上的差异。要求:1. 使用递归方式实现时,不能使用任何循环结构。2. 使用动态规划方式实现时,必须优化空间复杂度至O(1)。3. 程序需处理n为负数的情况,抛出自定义异常“InvalidFibonacciIndexException”。4. 为两种方法编写单元测试,确保n在0到90范围内结果正确(注意C#中int的范围限制)。