612 次浏览
比较PHP中的两个日期,代码如下。这里我们使用了等号运算符来比较日期 - 示例 实时演示输出这将产生以下输出:日期1 = 2019-10-30 日期2 = 2019-10-30 两个日期相等!示例让我们来看另一个示例 - 实时演示输出这将产生以下输出:日期1 = 2019-11-08 日期2 = 2018-08-10 日期1是较晚的日期!
778 次浏览
方法引用在Java 8中引入,类似于lambda表达式。它允许我们引用方法或构造函数而不执行它们。方法引用和lambda表达式需要一个目标类型,该类型包含一个兼容的函数式接口。我们也可以在java中将方法引用与泛型类和泛型方法一起使用。示例接口 MyFunc { int func(T[] vals, T v); } 类 MyArrayOps { static int countMatching(T[] vals, T v) { int count = 0; for(int i=0; i < vals.length; i++) if(vals[i] == v) count++; return count; ... 阅读更多
3K+ 次浏览
lambda表达式不能指定类型参数,所以它不是泛型的。但是,与lambda表达式相关的函数式接口是泛型的。在这种情况下,lambda表达式的目标类型由声明函数式接口引用时指定的参数类型决定。语法接口 SomeFunc { T func(T t); } 示例接口 MyGeneric { T compute(T t); } 公共类 LambdaGenericFuncInterfaceTest { 公共静态无效主要(字符串参数[]) { MyGeneric 反转 = (str) -> { // Lambda表达式 字符串结果 = ""; for(int i = str.length()-1; i >= 0; i--) ... 阅读更多
166 次浏览
问题陈述给定一个数组arr[],找到(arr[i] – i) – (arr[j] – j)的最大值,其中i不等于j。其中i和j从0到n-1变化,n是输入数组arr[]的大小。如果输入数组是{7, 5, 10, 2, 3},那么我们可以得到9的最大值,如下所示:(元素10 – 索引2) - (元素2 – 索引3) (10 – 2) – (2 – 3) = 8 – (-1) = 9算法1. 找到整个数组中(arr[i] – i)的最大值。2. 找到(arr[i] – ... 阅读更多
250 次浏览
问题陈述给定三个非零整数a,b和c。任务是通过在它们之间以任何顺序放置加法和乘法符号来找到可能的最大值。请注意,允许重新排列整数,但必须使用加法和乘法符号一次。如果a = 1,b = 3和c = 5,则最大值为20,如下所示:(1 + 3) * 5 = 20算法1. 如果所有数字都是正数,则将两个较小的数字相加,并将结果乘以较大的数字。2. 如果只有两个数字是正数,则将2个正数相乘,然后加上剩余的... 阅读更多
375 次浏览
问题陈述给定一个包含N个整数的数组。允许您重新排列数组的元素。任务是找到Σarr[i]*i的最大值,其中i = 0, 1, 2, .. n – 1。如果输入数组 = {4, 1, 6, 2},则如果我们将元素按排序顺序重新排列,则最大和将为28:{1, 2, 4, 6} = (1 * 0) + (2 * 1) + (4 * 2) + (6 * 3) = 28算法1. 按升序排序数组。2. 迭代数组并乘以每个数组元素1,其中i = 0, 1, ... 阅读更多
136 次浏览
问题陈述给定一根长度为L的杆,任务是将杆切割成多个部分,使得长度为p、q和r的部分的总数最大化。这些部分只能是长度为p、q和r的部分如果l = 15,p = 2,q = 3和r = 5,那么我们可以制作7个部分,如下所示:{2, 2, 2, 2, 2, 2, 3}算法我们可以使用动态规划来解决这个问题1. 将dp[]数组初始化为0。2. 迭代到杆的长度。对于每个i,p、q和...的切割 阅读更多
109 次浏览
问题陈述给定一个无符号数,找到可以使用给定无符号数的位形成的最大数。如果输入数字是8,则其二进制表示为:00000000000000000000000000001000要最大化它,将MSB设置为1。然后数字变为2147483648,其二进制表示为:10000000000000000000000000000000算法1. 统计给定数字的二进制表示中设置位的数量。2. 找到一个具有n个最低有效位设置位的数字。3. 将数字左移(32 – n)示例 实时演示#include using namespace std; unsigned getMaxNumber(unsigned num){ int n = __builtin_popcount(num); if (n == 32) { return num; } unsigned result = (1
201 次浏览
问题陈述给定一个包含N个元素的数组arr[]和一个整数K,其中K < N。任务是向同一数组中插入K个整数元素,以便使结果数组的中位数最大化。如果输入数组是{1, 3, 2, 5}并且k = 3,则:排序后的数组变为{1, 2, 3, 5}插入3个大于5的元素。此操作后,数组变为{1, 2, 3, 5, 6, 6, 6}新数组的中位数是5算法1. 为了最大化结果数组的中位数,需要插入的所有元素必须... 阅读更多
194 次浏览