92 次浏览
假设我们有两棵二叉树。我们必须找到两棵树中第一个不匹配的叶子节点。如果没有不匹配的叶子节点,则不显示任何内容。如果这是两棵树,则第一个不匹配的叶子节点是 11 和 15。在这里,我们将使用同时使用堆栈的这两棵树的迭代前序遍历。我们将为不同的树使用不同的堆栈。我们将节点推入堆栈,直到顶部节点是叶子节点。比较两个顶部节点,如果它们相同,则进行进一步检查,否则显示两个堆栈顶部元素。示例 在线演示 #include #include ... 阅读更多
106 次浏览
假设我们有一个包含 n 个元素的排序数组。该数组已排序。我们必须查找数组中是否存在一个元素,从该元素开始,较小元素的数量与较大元素的数量相同。如果相等点在数组中出现多次,则返回第一次出现的索引。如果没有这样的点,则返回 -1。假设元素如下 A = [1, 1, 2, 3, 3, 3, 3, 3],则相等点位于索引 2,元素为 A[2] = 2。因为它只有一个较小的元素…… 阅读更多
7K+ 次浏览
Lambda 表达式是一个匿名方法(没有名称的方法),它用于提供由函数接口定义的方法的内联实现,而方法引用类似于 Lambda 表达式,它引用一个方法而不执行它。箭头(->)运算符可用于连接 Lambda 表达式中的参数和功能,而 (::) 运算符在方法引用中将方法名称与对象或类的名称分隔开。Lambda 表达式的语法 ([逗号分隔的参数列表]) -> {主体} 方法引用的语法 :: 示例 import java.util.*; public class LambdaMethodReferenceTest { public static void main(String args[]) { ... 阅读更多
233 次浏览
假设我们有售价,并且给出利润或亏损百分比。我们必须找到产品的成本价。公式如下所示 −$$成本价 = \frac{售价 * 100}{100 + 利润百分比}$$$$成本价 = \frac{售价 *100}{100 + 亏损百分比}$$示例 在线演示 #include using namespace std; float priceWhenProfit(int sellPrice, int profit) { return (sellPrice * 100.0) / (100 + profit); } float priceWhenLoss(int sellPrice, int loss) { return (sellPrice * 100.0) / (100 - loss); } int main() { int SP, profit, loss; SP = 1020; profit = 20; cout
212 次浏览
假设我们有一个没有括号的算术表达式。我们的任务是找到该表达式的所有可能结果。假设表达式类似于 1+2*3-4,这可以解释如下 −1+(2*(3-4)) = 1 + (2* -1) = -1(1+2)*(3-4) = 3 * -1 = -31+((2*3)-4) = 1 + (6 - 4) = 3((1+2)*3)-4 = (3 * 3) - 4 = 51+(2*3)-4 = 1 + 6 – 4 = 3为了解决这个问题,我们必须遵循以下步骤 −最初将 res 设置为空对于每个运算符 x,执行以下操作 −递归计算 x 左侧的所有可能值,让…… 阅读更多
117 次浏览
假设我们有 n 个包含 L 和 R 的范围。我们必须检查或找到涵盖其他 n – 1 个给定范围的所有元素的范围的 0 基索引。如果没有这样的范围,则显示 -1。例如,如果 L = [2, 4, 3, 1],而 R = [4, 6, 7, 9],则输出为 3。这意味着索引为 3 的范围 (1 到 9) 涵盖了其他 n – 1 个范围的所有元素。由于所有 L 和 R 点都不同,因此请查找最小 L 和最大…… 阅读更多
243 次浏览
假设我们有一个数字 n。我们必须找到正整数的范围,其中范围内的所有数字都是合数,并且范围的长度是 n。如果有多个范围,则打印任何一个范围。合数是一个至少有一个除数(除 1 和它本身之外)的数。由于范围的长度是 n,则如果第一个数字是 a,则其他数字是 a + 1、a + 2、……、a + n – 1,所有这些都应该是合数。如果我们看到…… 阅读更多
63 次浏览
假设我们有两个整数 N 和 K。我们必须找到 2N 个自然数的第一个排列,以满足以下等式。$$\displaystyle\sum\limits_{i=1}^N\lvert A_{2i-1}-A_{2i}\rvert+\lvert \displaystyle\sum\limits_{i=1}^N A_{2i-1}-A_{2i} \rvert=2K$$K 的值应该小于或等于 N。例如,如果 N = 4 而 K = 1,则输出将为 2 1 3 4。给定表达式的结果将是 (|2 – 1| + |3 – 4|) – (|2 – 1 + 3 – 4|) = 2。这个想法很简单,假设我们有一个排序的序列,如 1, 2, 3, 4, 5, ... 阅读更多
374 次浏览
假设我们有一个包含 n 个元素的数组 A。我们必须找到数组的局部最小值。在数组 A 中,如果元素 A[x] 小于或等于其两个相邻元素,则称其为局部最小值。对于角元素,只考虑一个邻居。如果有多个局部最小值可用,则只返回一个。例如,如果数组类似于 [9, 6, 3, 14, 5, 7, 4],则局部最小值可以是 3、5 和 4,因此该算法只能返回其中一个。为了解决…… 阅读更多
839 次浏览
方法引用是Java 8中的一个新特性,与Lambda表达式相关。它允许我们引用构造函数或方法,而无需执行它们。方法引用和Lambda表达式类似,它们都需要一个目标类型,该类型包含兼容的函数式接口。语法类名 :: 实例方法名示例import java.util.*; import java.util.function.*; public class ArbitraryObjectMethodRefTest { public static void main(String[] args) { List persons = new ArrayList(); persons.add(new Person("Raja", 30)); persons.add(new Person("Jai", 25)); persons.add(new Person("Adithya", 20)); persons.add(new Person("Surya", 35)); persons.add(new ... 阅读更多