Le migliori 150 intervisteFacile

Inserisci intervallo

Guida dettagliata e implementazione Python per il problema "Intervallo di inserimento".

Dichiarazione del problema

Facile

Ti viene fornita una serie di intervalli non sovrapposti intervalli dove intervalli[i] = [starti, endi] rappresentano l'inizio e la fine dell'i-esimo intervallo e gli intervalli sono ordinati in ordine crescente in base a starti. Viene inoltre fornito un intervallo newInterval = [start, end] che rappresenta l'inizio e la fine di un altro intervallo. Inserisci newInterval negli intervalli in modo tale che gli intervalli siano ancora ordinati in ordine crescente per starti e gli intervalli non abbiano ancora intervalli sovrapposti (unisci gli intervalli sovrapposti se necessario).

Intervalli di ritorno dopo l'inserimento.

Scrivi una funzione insert(intervals: List[List[int]], newInterval: List[int]) -> List[List[int]].

Vincoli
  • 0 <= len(intervals) <= 10^4
  • intervals[i].length == 2
  • 0 <= starti <= endi <= 10^5
  • intervals is sorted by starti in ascending order
  • newInterval.length == 2
  • 0 <= start <= end <= 10^5

Esempi

Example 1
Input
intervals = [[1,3],[6,9]], newInterval = [2,5]
Output
[[1,5],[6,9]]
Explanation

The new interval [2,5] overlaps with [1,3], so they are merged into [1,5].

Example 2
Input
intervals = [[1,2],[3,5],[6,7],[8,10],[12,16]], newInterval = [4,8]
Output
[[1,2],[3,10],[12,16]]
Explanation

Because [4,8] overlaps with [3,5],[6,7],[8,10], they merge to [3,10].

Need a Hint?
Prendi in considerazione l'utilizzo di strutture dati specifiche per gli intervalli come set o heap.
Edge Cases to Watch
  • Strutture di input vuote
  • Ingressi a elemento singolo
  • Grandi limiti numerici

Pronto a risolvere?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Apri nell'editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Risorse Python consigliate

Espandi le tue conoscenze con tutorial interattivi, foglietti illustrativi e confronti di codici correlati.