Code: Select all
from typing import List, Tuple
from dataclasses import dataclass
Interval = Tuple[float, float] # Single interval with (min, max) bounds
Range = List[Interval] # Multi-dimensional range
@dataclass
class Overlap:
range1_index: int # Index of the first range in the list
range2_index: int # Index of the second range in the list
overlapping_intervals: List[Interval] # Overlapping intervals for each dimension
def find_overlapping_ranges(ranges: List[Range]) -> List[Overlap]
Wenn kein Algorithmus machbar ist, würde ich eine einfachere Funktion has_overlap verwenden, um zu prüfen, ob es eine Überlappung gibt.
Code: Select all
def find_overlapping_ranges(ranges: List[Range]) -> bool