我有一组有序的、不重叠的间隔,它们不共享边界,例如:
long[][] intervals = new long[][]{
new long[]{ 2, 3 },
new long[]{ 5, 10 },
new long[]{ 25, 1200 },
...
}
目前,我使用二进制搜索算法来确定值x是否包含在其中一个范围内。这需要大量的CPU工作,并且涉及到范围内的循环。
我现在的想法是形成一个多项式函数,其中
我期望二进制搜索的优势:
如何在给定一组区间的情况下构建这样的多项式函数?
你想要这样的东西吗:
public static void main(String[] args) {
long[][] intervals = new long[][]{
new long[]{2, 3},
new long[]{5, 10},
new long[]{25, 1200}
};
long numberToFind = 26;
long[] interval = findInterval(intervals, numberToFind);
if (interval.length > 0) {
System.out.println(numberToFind + " is in range: " + interval[0] + " to " + interval[interval.length - 1]);
}else {
System.out.println(numberToFind + " is not in range");
}
}
private static long[] findInterval(long[][] intervals, long numberToFind) {
for (long[] interval : intervals) {
if (numberToFind >= interval[0] && numberToFind <= interval[interval.length - 1]) {
return interval;
}
}
return new long[0];
}
为了定义一个多项目构建, 你需要创建一个设置文件 ( settings file). 设置文件放在源代码的根目录, 它指定要包含哪个项目. 它的名字必须叫做 settings.gradle. 在这个例子中, 我们使用一个简单的分层布局. 下面是对应的设置文件: Example 7.11. 多项目构建 - settings.gradle file settings.gradle include "s
我正在尝试使用spring Boot连接到aws。但是,我无法启动我的应用程序。以下是错误消息: 我的pom.xml有以下内容:
运行项目时,出现错误: UnsatisfiedDependencyException:创建文件SQLServerQueryDaoImpl.class中定义的名为“SQL ServerQueryDaoImpl”的bean时出错:未满足的依赖关系通过构造函数参数0表示;嵌套异常是org.springframework.beans.factory.NosuchBeanDefinitionExceptio
0/1背包动态规划算法的空间优化是使用大小等于背包容量的1-d数组(例如A),并在每次迭代i时简单地覆盖A[w](如果需要),其中A[w]表示如果考虑前i个项目并且背包容量为w,则总价值。如果使用这种优化,是否有办法重建选择的项目列表,也许通过在DP算法的每次迭代中保存一些额外信息?例如,在Bellman Ford算法中,可以实现类似的空间优化,并且只要我们保留前身指针的列表,即最后一跳(或第一跳
你可以在同一个构建里加入项目之间的依赖, 举个例子, 一个项目的 JAR 文件被用来编译另外一个项目. 在 api 构建文件里我们将加入一个由 shared 项目产生的 JAR 文件的依赖. 由于这个依赖, Gradle 将确保 shared 项目总是在 api 之前被构建. Example 7.13. 多项目构建 - 项目之间的依赖 api/build.gradle dependencies {
我在使用Spring4.1.6.Release时出现了一个错误。 我不知道这个错误是从哪里来的。Autowire注释应该为我创建bean。我还遗漏了什么注释? 说明服务器遇到一个内部错误,使其无法满足此请求。 例外 servletException:servlet.init()servlet appServlet抛出异常he.coyote.abstractProtocol$abstractConn