本文出处:SmartCat代码生成器
一款实用的代码生成器 希望给大家带来方便 也请大家多提需求和反馈bug http://ouchen.tech
本文出处:SmartCat代码生成器
一款实用的代码生成器 希望给大家带来方便 也请大家多提需求和反馈bug http://ouchen.tech
编写一个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的范围限制)。
实现一个高效的字符串压缩算法,要求如下:1. 压缩规则:连续相同的字符应被替换为该字符后跟一个方括号包裹的重复次数,例如 "aaabbb" 应压缩为 "a[3]b[3]"。2. 压缩后的字符串如果长度大于或等于原始字符串,则返回原始字符串。3. 输入字符串只包含英文字母,且长度不超过 10^5。4. 时间复杂度必须为 O(n),n 为输入字符串长度。5. 空间复杂度应为 O(1)(输出字符串所需空间不计入)。请编写函数实现上述逻辑,并通过以下测试用例验证:- 输入:"aabcccccaaa",输出应为 "a[2]b[1]c[……
编写一个C#程序,使用递归和LINQ实现对一个整数列表的分组排序。规则如下:1. 将列表中所有数字按 **个位数** 分组(例如,个位数为3的数字如13、23、3等归为一组)。2. 每组内部按数值升序排列。3. 所有组按 **组内元素个数从多到少排序** 输出。4. 若两组元素个数相同,则按该组 **个位数从小到大排序**。5. 要求整个操作通过一个递归函数和LINQ完成,不得使用任何循环语句(for、foreach、while等)。输入示例:```csharpList numbers = new List { 12, 23, 34, 45, 56, 67, 78, 89, 90, 13, 2……
有一个包含 100 个正整数的数组,其中每个数字都在 1 到 99 之间(包含)。已知其中有且仅有一个数字是重复的(可能重复多次),请设计一个算法在不修改原数组、不使用额外空间(即 O(1) 空间复杂度)的前提下,找出这个重复的数字。要求时间复杂度尽可能低。写出你的解决方案并解释其原理。
有一个包含100个元素的整数数组,其中每个元素的取值范围是1到99(包含),也就是说有且仅有1个数字是重复的(这个数字出现了两次,其余数字各出现一次)。请使用C#编写一个函数,找出这个重复的数字。要求:1. 不能使用LINQ;2. 不能使用额外的数据结构(如哈希表、字典、集合等);3. 时间复杂度尽量优化;4. 如果有多种实现方式,请说明并选择一种最优的实现方式。