MATLAB 查找两个范围的重叠部分并返回一维矩阵
你可以使用以下代码来找到两个范围内的重叠部分,并返回一个一维矩阵:
function overlap = findOverlap(range1, range2)
overlap = max(range1(1), range2(1)):min(range1(2), range2(2));
end
在上面的代码中,range1 和 range2 是两个范围,每个范围都是一个包含两个元素的向量。max(range1(1), range2(1)) 找到两个范围的起始位置中的最大值,min(range1(2), range2(2)) 找到两个范围的结束位置中的最小值。然后,我们使用冒号运算符创建一个从起始位置到结束位置的序列,这个序列就是两个范围的重叠部分。最后,将重叠部分赋值给变量 overlap 并返回它。
你可以在主程序中调用这个函数,例如:
range1 = [1, 5];
range2 = [3, 7];
overlap = findOverlap(range1, range2);
disp(overlap);
上面的代码将输出重叠部分 [3, 4, 5]。
原文地址: https://www.cveoy.top/t/topic/pfUB 著作权归作者所有。请勿转载和采集!