找到关于数据结构的1861 篇文章

查找数字位数之和等于某个值的数字

Samual Sam
更新于 2020年6月16日 14:28:01

1K+ 次浏览

给定一个数字 n 和一个值。我们必须找到所有 n 位数,其中所有 n 位数字的和等于给定值。这里 0 不算作一位数字。n 必须在 1 到 100 的范围内,值必须在 1 到 500 的范围内。输入和输出输入:该算法采用数字位数和总和值作为输入。假设位数为 3,总和为 15。输出:显示位数和为 15 的不同 3 位数的数量。结果为 69。(共有……阅读更多

编辑距离

Ankith Reddy
更新于 2020年6月16日 14:38:19

1K+ 次浏览

给定两个字符串。第一个字符串是源字符串,第二个字符串是目标字符串。在这个程序中,我们必须找到将第一个字符串转换为第二个字符串所需的最少编辑次数。字符串的编辑可以是插入一些元素、删除第一个字符串中的某些内容或修改某些内容以转换为第二个字符串。输入和输出输入:要比较的两个字符串。字符串 1:Programming 字符串 2:Programs 输出:输入初始字符串:Programming 输入最终字符串:Programs 将 Programming 转换为 Programs 所需的更改次数为 4算法编辑计数(initStr,…阅读更多

鸡蛋掉落难题

karthikeya Boyini
更新于 2020年6月16日 14:42:42

545 次浏览

这是一个著名的益智问题。假设有一座 n 层的建筑,如果我们有 m 个鸡蛋,那么我们如何才能找到最少的掉落次数来找到一个从该楼层掉落鸡蛋不会碎的楼层。有一些重要的注意事项:当鸡蛋从给定楼层掉落而不碎时,它在任何较低的楼层也不会碎。如果鸡蛋从给定楼层掉落而碎了,那么它在所有较高的楼层也会碎。当鸡蛋碎了,必须丢弃它,否则我们可以再次使用它。输入和……阅读更多

到达第 n 个台阶的方法数

Samual Sam
更新于 2020年6月16日 14:45:40

323 次浏览

有 n 个台阶。一个人将从第 1 个台阶走到第 n 个台阶。每一步最多可以跨越的台阶数也是给定的。有了这些信息,我们必须找到到达第 n 个台阶的可能方法。让我们考虑一下一个人每一步最多可以跨越两个台阶。所以我们可以找到递归关系来解决这个问题。一个人可以从 (n-1) 个台阶或 (n-2) 个台阶移动到第 n 个台阶。所以 ways(n) = ways(n-1) + ways(n-2)。输入和输出输入:台阶数,例如 10,每一步最多可以跨越的台阶数……阅读更多

计算建造建筑物的可能方法数

Arjun Thakur
更新于 2020年6月16日 14:50:22

550 次浏览

这里给出 n 个地段,每个地段在道路的两侧都可以建造建筑物。如果两栋房屋之间需要一个空位,那么在该地块上建造建筑物的可能方法有多少种。有四种建造建筑物的可能性:道路的一侧;道路的另一侧;不能建造建筑物;道路的两侧。输入和输出输入:它需要建造建筑物的区域数。假设输入是 3。输出:输入区域数:3 建筑物可以以 25 种不同的方式建造。算法建造方法(n)输入:有 n 个区域。输出……阅读更多

计算在游戏中达到给定分数的方法数

karthikeya Boyini
更新于 2020年6月16日 14:52:58

581 次浏览

让我们考虑一个游戏,在这个游戏中,玩家每次移动可以获得 3、5 或 10 分。还给出了目标分数。我们的任务是找到使用这三个分数达到目标分数的可能方法有多少种。通过动态规划方法,我们将创建一个从 0 到 n 的所有分数列表,对于 3、5、10 的每个值,我们只需更新表格即可。输入和输出输入:使用 3、5 和 10 达到的最大分数。假设输入是 50。输出:使用……阅读更多

计算没有连续 1 的二进制字符串

Ankith Reddy
更新于 2020年6月16日 14:57:01

647 次浏览

在这个问题中,我们必须找到一些没有连续 1 的二进制数。在 3 位二进制字符串中,有三个二进制数 011、110、111 具有连续的 1,并且有五个数字没有连续的 1。因此,将此算法应用于 3 位数字后,答案将为 5。如果 a[i] 是位数为 I 且不包含任何连续 1 的二进制数的集合,而 b[i] 是位数为 I 且包含连续 1 的二进制数的集合,那么存在如下递归关系:a[i] := …阅读更多

计算从 1 到 n 的所有数字的数字之和

Samual Sam
更新于 2020年6月16日 15:15:00

675 次浏览

在这个问题中,我们必须找到 1 到 n 范围内所有数字的数字之和。例如,54 的数字之和是 5 + 4 = 9,像这样,我们必须找到所有数字及其数字之和。我们知道,可以生成 10d - 1 个数字,其位数为 d。为了找到所有这些位数为 d 的数字的总和,我们可以使用递归公式。sum(10d- 1)=sum(10d-1- 1)*10+45*(10d-1)输入和输出输入:该算法采用范围的上限作为输入,假设它是 20。输出:……阅读更多

使用两次遍历收集网格中的最大点数

Arjun Thakur
更新于 2020年6月16日 15:18:04

263 次浏览

在一个网格中,每个单元格都包含若干点数,如何通过两次遍历获得网格中的最大点数?需要满足以下条件:第一次遍历从网格的左上角开始,到达左下角;第二次遍历从右上角开始,到达右下角。从一个单元格只能移动到当前单元格的下方、左下方或右下方。如果一次遍历已经从某个单元格获得了一些点数,那么在下次遍历中将不会从该单元格获得任何点数……阅读更多

箱子堆叠问题

Samual Sam
更新于 2020年6月16日 13:33:48

854 次浏览

在这个问题中,给定一组不同的箱子,不同箱子的长、宽、高可能不同。我们的任务是找到一个箱子堆叠,使其高度尽可能高。我们可以随意旋转任何箱子。但需要遵守一个规则:只有当底部箱子的顶部表面积大于顶部箱子的底部表面积时,才能将一个箱子放在另一个箱子上面。输入和输出输入:给定一个箱子列表。每个箱子用 (长, 宽, 高) 表示。{(4, 6, 7), ... 阅读更多

广告