题目描述 法一:判断不重叠的情况 class Solution: def isRectangleOverlap(self, rec1: List[int], rec2: List[int]) -> bool: x1_1,y1_1,x1_2,y1_2 = rec1 x2_1,y2_1,x2_2,y2_2 = rec2 if x2_2<=x1_1 or x2_1>=x1_2 or y2_2<=y1_1 or y2_1>=y1_2 : return False else: return True 法2:投影到横纵轴,判断重叠情况 class Solution: def isRectangleOverlap(self, rec1: List[int], rec2: List[int]) -> bool: x1_1,y1_1,x1_2,y1_2 = rec1 x2_1,y2_1,x2_2,y2_2 = rec2 if min(x1_2,x2_2) > max(x1_1,x2_1) and max(y1_1,y2_1) < min(y1_2,y2_2) : return True else: return False