En İyi 150 RöportajSert

Veri Akışından Medyan Bul

'Veri Akışından Medyan Bul' sorunu için ayrıntılı kılavuz ve Python uygulaması.

Sorun Bildirimi

Sert

Medyan, sıralı bir tamsayı listesinde ortadaki değerdir. Listenin boyutu eşitse orta değer yoktur ve ortanca, ortadaki iki değerin ortalamasıdır.

MedianFinder sınıfını uygulayın:

- MedianFinder() MedianFinder nesnesini başlatır.

- addNum(num: int) Veri akışındaki tamsayı sayısını veri yapısına ekler.

- findMedian() -> float Şu ana kadarki tüm öğelerin ortancasını döndürür.

Giriş, işlemlerin ve argümanların bir listesidir. Sonuçların bir listesini döndüren medianFinder(operations: list, arguments: list) -> list işlevini uygulayın (yapıcı/addNum için Yok, findMedian için float).

Kısıtlamalar
  • -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

Örnekler

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?
Kümeler veya yığınlar gibi Yığın/Öncelik Kuyruğuna özgü veri yapılarını kullanmayı düşünün.
Edge Cases to Watch
  • Boş giriş yapıları
  • Tek eleman girişleri
  • Büyük sayısal sınırlar

Çözmeye Hazır mısınız?

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

Editörde Aç
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

Önerilen Python Kaynakları

İlgili etkileşimli eğitimler, yardımcı sayfalar ve kod karşılaştırmalarıyla bilginizi genişletin.