Wawancara 150 TeratasKeras

Temukan Median Dari Aliran Data

Panduan terperinci dan implementasi Python untuk masalah 'Temukan Median Dari Aliran Data'.

Pernyataan Masalah

Keras

Median adalah nilai tengah dalam daftar bilangan bulat terurut. Jika ukuran daftarnya genap, tidak ada nilai tengahnya, dan median adalah nilai tengah dari dua nilai tengah.

Menerapkan kelas MedianFinder:

- MedianFinder() Menginisialisasi objek MedianFinder.

- addNum(num: int) Menambahkan bilangan bulat dari aliran data ke struktur data.

- findMedian() -> float Mengembalikan median semua elemen sejauh ini.

Input adalah daftar operasi dan argumen. Terapkan fungsi medianFinder(operations: list, arguments: list) -> list yang mengembalikan daftar hasil (Tidak ada untuk konstruktor/addNum, float untuk findMedian).

Kendala
  • -10^5 <= num <= 10^5
  • There will be at least one element in the data structure before calling findMedian
  • At most 5 * 10^4 calls will be made to addNum and findMedian

Contoh

Example 1
Input
operations = ["MedianFinder", "addNum", "addNum", "findMedian", "addNum", "findMedian"], arguments = [[], [1], [2], [], [3], []]
Output
[None, None, None, 1.5, None, 2.0]
Explanation

Initialize. Add 1, 2. Median is 1.5. Add 3. Median is 2.0.

Need a Hint?
Pertimbangkan untuk menggunakan struktur data khusus Heap/Antrian Prioritas seperti kumpulan atau heap.
Edge Cases to Watch
  • Struktur masukan kosong
  • Masukan elemen tunggal
  • Batasan angka yang besar

Siap Memecahkannya?

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

Buka di 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

Sumber Daya Python yang Direkomendasikan

Perluas pengetahuan Anda dengan tutorial interaktif terkait, lembar contekan, dan perbandingan kode.