0

假设我有这个数据集......

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

想象一下,这些值被绘制在 (x,y) 坐标对中的 y 上,而 x 是数组索引,我怎么知道我的两个数组是否在一个点交叉。

谢谢。

4

1 回答 1

1

尝试这个:

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] 之间的关系则相反。

于 2010-12-30T00:32:07.723 回答