找到 34423 篇文章,关于编程

在 C++ 中查找数组中最大的 d,使得 a + b + c = d

Arnab Chakraborty
更新于 2019-12-19 09:56:32

92 次查看

假设我们有一组整数。我们需要找到一个数字“d”,其中 d = a + b + c,并且我们需要最大化 (a + b + c),所有 a、b、c 和 d 都存在于集合中。该集合将至少包含一个元素,最多包含 1000 个元素。每个元素都是一个有限数字。如果集合是 {2, 3, 5, 7, 12},则 12 是最大的 d。这可以用 2 + 3 + 7 来表示要解决此问题,我们可以使用哈希技术。我们将存储... 阅读更多

在 C++ 中查找 k 个 2 的幂,其和为 N

Arnab Chakraborty
更新于 2019-12-19 09:53:04

139 次查看

假设我们有两个数字 N 和 K。任务是打印 K 个数字,这些数字是 2 的幂,并且它们的和为 N。如果不可能,则返回 -1。假设 N = 9 且 K = 4,则输出将为 4 2 2 1,其和为 9,元素数量为 4,并且每个元素都是 2 的幂。我们需要遵循以下步骤来解决此问题:如果 k 小于 N 中的 set bits 数量或大于 N,则返回... 阅读更多

在 C++ 中查找所有区间的交集

Arnab Chakraborty
更新于 2019-12-19 09:50:23

740 次查看

假设我们有 N 个区间,形式为 {L, R},其中 L 是起始时间,R 是结束时间。我们需要找到所有区间的交集。交集是一个位于所有给定区间内的区间。如果没有找到这样的区间,则返回 -1。例如,如果区间如下:[{1, 6}, {2, 8}, {3, 10}, {5, 8},输出区间为 {5, 6}要解决此问题,我们将遵循以下步骤:将第一个区间视为最终区间从第二个区间开始,尝试搜索交集。两种情况可能发生... 阅读更多

什么是 Java 中的强制转换表达式?

raja
更新于 2020-07-11 07:40:37

660 次查看

强制转换表达式提供了一种机制,可以显式提供 lambda 表达式的类型(如果无法从上下文中方便地推断)。它还有助于解决当方法声明与不相关的函数式接口类型重载时出现的歧义。语法Object o = () -> { System.out.println("TutorialsPoint"); }; // 非法:Object o = (Runnable) () -> { System.out.println("TutorialsPoint"); }; // 合法示例interface Algebra1 {    int operate(int a, int b); } interface Algebra2 {    int operate(int a, int b); } public class LambdaCastingTest {    public static void main(String[] args) {       printResult((Algebra1)(a, b) -> a + b);  // 强制转换表达式... 阅读更多

在 C++ 中查找一个字符串在另一个字符串中所有出现的索引

Arnab Chakraborty
更新于 2019-12-19 09:42:14

3K+ 次查看

假设我们有字符串 str,以及另一个子字符串 sub_str,我们需要找到 sub_str 在 str 中所有出现的索引。假设 str 是“aabbababaabbbabbaaabba”,而 sub_str 是“abb”,则索引将为 1 9 13 18。要解决此问题,我们可以使用 C++ STL 中的 substr() 函数。此函数获取它将开始检查的初始位置以及子字符串的长度,如果与 sub_str 相同,则返回该位置。示例实时演示#include using namespace std; void substrPosition(string str, string sub_str) {    bool flag = false;    for ... 阅读更多

在 C++ 中查找给定数字是否存在于无限序列中

Arnab Chakraborty
更新于 2019-12-19 08:15:27

191 次查看

假设我们有三个整数 a、b 和 c。假设在一个无限序列中,a 是第一项,c 是公差。我们需要检查 b 是否存在于序列中。假设值如下:a = 1,b = 7 且 c = 3,则序列将为 1、4、7、10、…,因此 7 存在于序列中,因此输出将为“yes”。要解决此问题,我们需要遵循以下两个步骤:当 c = 0 且 a = b 时,打印 yes,如果 a ... 阅读更多

在 C++ 中查找表达式是否包含重复括号

Arnab Chakraborty
更新于 2019-12-19 08:08:01

260 次查看

假设我们有一个表达式 exp,我们需要检查 exp 是否包含重复的括号集。如果一个子表达式被多个括号集包围,则表达式将包含重复括号。例如,如果表达式如下:-(5+((7-3)))这里子表达式 (7 – 3) 被两对括号包围,因此这些是重复括号。要解决此问题,我们将使用堆栈。我们将遍历 exp 中的每个字符,如果字符是开括号“(”,或任何运算符或操作数,则将其... 阅读更多

在 C++ 中查找数组是否包含与一个字符不同的字符串

Arnab Chakraborty
更新于 2019-12-19 08:05:55

128 次查看

假设我们有一个字符串 s,以及另一个字符串数组 A。我们需要查找数组是否包含一个与当前字符串(不同长度)只有一个字符不同的字符串。假设字符串为“banana”,而数组如下:[“bana”,“orange”,“banaba”,“banapy”],结果将为 true,因为有一个字符串 banaba,这里只有一个字符与 banana 不同。要解决此问题,我们将遵循以下步骤:遍历给定字符串 s,并检查数组中的每个字符串,然后对 arr 中的每个字符串执行以下步骤:检查... 阅读更多

在 C++ 中查找 gcd(a^n, c),其中 a、n 和 c 的取值范围为 1 到 10^9

Arnab Chakraborty
更新于 2019-12-19 08:01:30

58 次查看

我们需要找到两个数字的最大公约数,其中一个数字可以大到 (109 ^ 109),这无法存储在某些数据类型(如 long 或其他类型)中。因此,如果数字为 a = 10248585,n = 1000000,b = 12564,则 GCD(a^n, b) 的结果将为 9。由于数字非常大,因此我们无法使用欧几里得算法。我们需要使用具有 O(log n) 复杂度的模幂运算。示例实时演示#include #include using namespace std; long long power(long long a, long long n, long long b) {    long long res = ... 阅读更多

在 C++ 中查找范围有限的数组中每个元素的频率,时间复杂度小于 O(n)

Arnab Chakraborty
更新于 2019-12-19 07:58:53

243 次查看

假设我们有一个整数数组。数组为 A,大小为 n。我们的任务是在小于 O(n) 的时间内找到数组中所有元素的频率。元素的大小必须小于某个值,例如 M。这里我们将使用二分搜索方法。如果数组的末尾元素不同,我们将递归地将数组分成两部分;如果两个末尾元素相同,则表示数组中的所有元素都相同,因为数组已排序。示例 现场演示#include #include using namespace std; void ... 阅读更多

广告

© . All rights reserved.