1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
private int compare(int delay)
{
int count = 0;
//faire une copie de dc2_copy
ArrayList<decompose> dc2_copy3 = new ArrayList<decompose>();
for (int k = 0; k < dc2_copy.size(); k++)
{
dc2_copy3.add(new decompose());
dc2_copy3.get(k).start = dc2_copy.get(k).start;
}
//on compare dc2_copy3 et dc1
int s1 = dc1.size();
for (int i = 0; i < s1; i++)
{
double b = dc1.get(i).start;
int s2 = dc2_copy3.size();
double a=0;
for (int j = 0; j < s2; j++)
{
//le fait de laisser la ligne suivante seule augmente considérablement le temps de calculs
a = dc2_copy3.get(j).start;
if (a > b - delay && a <= b + delay)
{
count++;
dc2_copy3.get(j).start = -1999999999;
j = dc2_copy3.size(); //break
}
}
}
return count;
} |