Alt Dizi Toplam Kontrolü — Python Sorusu #72 | PythonMulakat Soruları | Python Alıştırma Soruları
Alt Dizi Toplam Kontrolü
intermediateO(n)
Bir sayı listesi ve bir hedef sayı veriliyor.
Listedeki herhangi bir alt dizinin (continuous subsequence)
toplamının hedef sayıya eşit olup olmadığını kontrol et.
⚠️ Tüm alt dizileri brute-force deneme O(n²) yapma.
Daha verimli bir yöntem düşün.
İpuçları
💡 İpucu 1: Sliding window tekniği düşün — başlangıç ve bitiş işaretçileri.
💡 İpucu 2: Mevcut toplam hedefi aştıysa, başlangıcı kaydır.
**Alt Dizi Toplam Kontrolü** sorusu, **Algoritmalar** kategorisinde **intermediate** seviye bir mülakat sorusudur.
**Problem:** Bir sayı listesi ve bir hedef sayı veriliyor.
**Yaklaşım:**
```python
def has_subarray_with_sum(nums: list, target: int) -> bool:
# ...implementasyon...
```
**Kategori ipuçları (Algoritmalar):**
- arama bilgisi temel
- Tipik çözüm 5-15 satır Python kodu içerir
- Test senaryoları genelde 2-3 edge case içerir
**Neden bu soru:**
Intermediate seviye mülakatlarda algoritmalar bilgisi sınanır. Benzer sorular aynı kategoride komşu ID'lerde bulunur (related_question_ids).
**Pratik tavsiye:**
- Önce brute-force çöz, sonra optimize et
- Algoritma sorularında time complexity'yi düşün (O(n), O(n²), O(log n))
- Test case'leri dikkatle oku, edge case ipucu taşır