找到 34423 篇文章 关于编程

在 Python 中查找给定字符串的所有不同回文子字符串

Arnab Chakraborty
更新于 2020年8月28日 08:55:03

355 次浏览

假设我们有一个包含小写 ASCII 字符的字符串,我们必须找到其所有不同的连续回文子字符串。因此,如果输入类似于“bddaaa”,则输出将是 [a, aa, aaa, b, d, dd]。为了解决这个问题,我们将遵循以下步骤:m := 一个新的映射 n := s 的大小 matrix := 创建两行 n 个 0 的矩阵 s := "@" 连接 s 连接 "#" 对于 j 范围从 0 到 1,执行 temp := 0 matrix[j, 0] := 0 i := 1 当 i

在 Python 中查找一个字符串,使得每个字符都按字典顺序大于其紧邻的下一个字符

Arnab Chakraborty
更新于 2020年8月28日 08:46:39

142 次浏览

假设我们有一个数字 n;我们必须检查长度为 n+1 的小写字符串,以便任何位置的字符都按字典顺序大于其紧邻的下一个字符。因此,如果输入类似于 15,则输出将是 ponmlkjihgfedcba。为了解决这个问题,我们将遵循以下步骤:temp_str := 空字符串 extra := n mod 26 如果 extra >= 1,则 对于 i 范围从 26 -(extra + 1) 到 25,执行 temp_str := temp_str + str[i] count := n / 26(整数除法) 对于 i 范围从 1 到 count + 1,执行 对于 j 范围从 0 到 25,执行 temp_str := ... 阅读更多

在 Python 中以线性时间查找大小为 3 的已排序子序列

Arnab Chakraborty
更新于 2020年8月28日 08:38:31

127 次浏览

假设我们有一个包含 N 个数字的数组,我们必须检查是否存在 3 个元素,使得 b[i]< b[j] < b[k] 并且 i < j < k,时间复杂度为线性 (O(n))。如果存在多个这样的三元组,则打印其中任何一个。因此,如果输入类似于 [13, 12, 11, 6, 7, 3, 31],则输出将是 [6, 7, 31]。为了解决这个问题,我们将遵循以下步骤:n := A 的大小 maximum := n-1, minimum := 0 smaller := 一个大小为 1000 的数组,并用 0 填充 smaller[0] := -1 对于 i 范围从 1 到 n,执行 如果 ... 阅读更多

在 Python 中找到一个正数 M,使得 gcd(N^M,N&M) 最大

Arnab Chakraborty
更新于 2020年8月28日 08:32:45

81 次浏览

假设我们有一个数字 N,我们必须找到一个正数 M,使得 gcd(N^M, N&M) 尽可能大,并且 m < n。我们还将返回由此获得的最大 gcd。因此,如果输入类似于 20,则输出将是 31。为了解决这个问题,我们将遵循以下步骤:如果 bit_count(n) 与 0 相同,则 对于 i 范围从 2 到 int(n 的平方根) + 1,执行 如果 n mod i 与 0 相同,则 返回 int(n / i) 否则,val := 0 p := dup n := n 当 n 非零时,执行 如果 (n AND 1) 相同 ... 阅读更多

在 C 中查找导致归并排序最坏情况的排列

Arnab Chakraborty
更新于 2020年7月23日 08:33:31

249 次浏览

概念关于给定的一组元素,确定这些元素的哪种排列会导致归并排序的最坏情况?我们知道,渐近地,归并排序总是消耗 O(n log n) 时间,但是需要更多比较的情况通常在实践中消耗更多时间。现在我们基本上需要确定输入元素的排列,这将导致在实现典型的归并排序算法时进行最大次数的比较。示例考虑以下元素集作为已排序数组 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 结果输入数组将导致 ... 阅读更多

在 Java 中的平衡 BST 中查找具有给定和的配对

Arnab Chakraborty
更新于 2020年7月23日 08:32:23

162 次浏览

概念关于给定的平衡二叉搜索树和目标和,我们编写一个函数,如果存在和等于目标和的配对,则返回 true,否则返回 false。在这种情况下,预期时间复杂度为 O(n),并且只能实现 O(Logn) 的额外空间。在这里,不允许对二叉搜索树进行任何修改。我们必须注意,平衡 BST 的高度始终为 O(Logn)。示例方法根据暴力解决方案,我们考虑 BST 中的每一对并验证总和是否等于 X。此解决方案的时间复杂度将为 O(n^2)。现在一个 ... 阅读更多

在 C++ 中找到一个数字,当与整数数组的每个数字进行异或运算时,该数字给出最小和

Arnab Chakraborty
更新于 2020年7月23日 08:25:24

210 次浏览

概念关于给定的非负整数数组 Arr[],任务是确定一个整数 X,使得 (Arr[0] XOR X) + (Arr[1] XOR X) + … + Arr[n – 1] XOR X 尽可能小。输入 Arr[] = {3, 4, 5, 6, 7} 输出 X = 7, Sum = 10 方法因此,我们将验证数组中每个数字的二进制表示中的第 'i' 位,并考虑并计算那些将该第 'i' 位设置为 '1' 的数字,因为这些设置位将有助于最大化总和而不是最小化。因此,我们必须构建这个设置的第 'i' 位 ... 阅读更多

在 C++ 中找到 N 个整数数组中的一个非空子集,使得子集的元素之和可以被 N 整除

Arnab Chakraborty
更新于 2020年8月28日 08:06:17

296 次浏览

假设我们有一个包含 n 个数字的数组;我们必须找到一个非空子集,使得子集的元素之和可以被 n 整除。因此,我们必须输出任何这样的子集,包括其大小和原始数组中元素的索引(如果存在)。因此,如果输入类似于 [3, 2, 7, 1, 9],则输出将是 [2],[1 2]。为了解决这个问题,我们将遵循以下步骤:定义一个映射 my_map add := 0 对于初始化 i := 0,当 i < N 时,更新(将 i 增加 1),执行:add := (add ... 阅读更多

修改后字符串的最终状态 (Python)

Arnab Chakraborty
更新于 2020年8月28日 08:05:57

107 次浏览

假设我们有一个字符串 S。长度为 n。这些 n 个盒子彼此相邻,位置 i 处的字符 R 表示第 i 个盒子被推向右侧。类似地,位置 i 处的 L 表示第 i 个盒子被推向左侧,点“.”表示空空间。从初始配置开始,在每个时间单位,一个被推向右侧的盒子能够将下一个盒子推向右侧,相同的动作也可以应用于左侧。我们必须找到所有盒子在不再 ... 阅读更多

C 语言中的 fillpoly() 函数

Arnab Chakraborty
更新于 2020年7月23日 08:18:25

524 次浏览

概念现在头文件 graphics.h 包含 fillpoly() 函数,该函数用于绘制和填充多边形,例如三角形、矩形、五边形、六边形等。因此,此函数需要与 drawpoly() 函数相同的参数。语法void fillpoly( int number, int *polypoints );在本例中,number 指示 (n + 1) 个点的数量,其中 n 是多边形顶点的数量,而 polypoints 指向一个包含 (n*2) 个整数的序列。输入 arr[] = {320, 150, 400, 250, 250, 350, 320, 150};输出 解释 因此,fillpoly() 的声明包含两个参数:number 指定 (n + 1) 个点的数量,其中 n 表示顶点的数量……阅读更多

广告
© . All rights reserved.