Определение пересечения чисел - PullRequest
0 голосов
/ 30 декабря 2010

Допустим, у меня есть этот набор данных ...

var a = [5,6,7]; var b = [9,8,6];

Представьте, что эти значения были нанесены на график y в пару координат (x, y), а x был индексом массива, как я могу определить, пересеклись ли мои два массива в одной точке.

Спасибо.

1 Ответ

1 голос
/ 30 декабря 2010

Попробуйте это:

if ((a[0] < b[0]) == (a[1] > b[1]) ||
    (a[1] < b[1]) == (a[2] > b[2]))
{
    // crossed
}

Важным моментом является то, что для некоторого индекса i значения a [i] (больше | меньше), чем b [i], и связь между a [i+ 1] и b [i + 1] - противоположность.

...