我刚刚开始了麻省理工学院的算法课程,我们被教了2D峰值查找算法。我尝试了干式运行并实现了它,但是对于这个输入来说,algo似乎失败了。
{5, 0, 3, 2}
{1, 1, 2, 4}
{1, 2, 4, 4}
这就是算法:
• Pick middle column j = m/2
• Find global maximum on column j at (i,j)
• Compare(i,j−1),(i,j),(i,j+1)
• Pick left columns of(i,j−1)>(i,j)
• Similarly for right
• (i,j) is a 2D-peak i
超过您的程序所需的时间比预期的要长。预期时限:2.49秒
第一法典:
subarr = []
N = n+1 - k
for i in range(N):
S = arr[i:i+k]
subarr.append(max(S))
return subarr
第二法典:
l=[max(arr[:k])]
for i in range(k,n):
if l[-1]==arr[i-k]:
l.append(max(arr[i-k+1:i+1]))
elif l[-
int main() {
int arr[5];
for ( int i = 0; i < 5; i++) {
cin>>arr[i];
}
for (int i = 0; i < 5; i++) {
for ( int j = 1; j < 5; j++) {
if ( arr[j] < arr[j-1]) swap(arr[j], arr[j-1]);
}
}
DEAP是一个支持进化算法的了不起的Python包。
现在,我从简单的示例中学习它
使用HallofFame on,“它将跟踪进化中出现的最佳个体(即使在其熄灭的情况下)”。
但当我使用它时,种群在进化过程中的最大适应度有时会下降一些。
我认为当最好的父母离开时,fitness.Max永远不应该减少,而应该保持不变或增加。
这是我直接在DEAP网站上复制的代码。
import array
import random
import numpy
from deap import algorithms
from deap import base
from deap import creator
我有一个动态图表更新数据每100毫秒左右。我知道我的数字将在0到100之间,但动态图表不断调整范围。我如何保持一个恒定的Y轴范围,从0到100,以便一切都可以看到比例?
代码如下:
function scoreGraphSetup() {
// Global vars used:
// scoreBuffer, latestScore
//var scoreBuffer = []; // dataPoints
var chart = new CanvasJS.Chart("chartContainer", {
title :{
我有一个整数序列(正和负),如下所示:
12,-54,32,1,-2,-4,-8,12,56,-22,-21,4,17,35
我需要找到这个序列的任何子序列(当然还有该子序列的起始索引和结束索引)可能出现的最差结果(较小的值总和)。
有没有办法做到这一点而不是2^n (逐个计算所有可能的序列)?
例如,使用这个简单的序列:
1,2,-3,4,-6,4,-10,3,-2
值的较小和将是子序列:
-6,4,-10 (with start index 4 and end index 6)
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please choose the minimum of your range: ");
double minimum