Bir sayı dizisinde, toplamı hedef sayıya en yakın olan iki elemanı bul.
Birden fazla çözüm varsa, herhangi birini döndürmek yeterli.
Sonuç: [eleman1, eleman2] şeklinde liste döndür.
Örnek: [1, 2, 3, 4, 5], hedef = 8 → [3, 5] (toplam 8, tam isabet)
Örnek: [1, 2, 3, 4], hedef = 10 → [4, 4] veya [1, 4] (en yakın toplam 9)
İpuçları
💡 İpucu 1: Önce listeyi sırala (sıralanmış liste ile çalışmak daha kolay).
💡 İpucu 2: İki işaretçi tekniği kullan — biri başta, biri sonda.
💡 İpucu 3: current_sum = arr[left] + arr[right]; hedefe göre işaretçileri hareket ettir.
Yaklaşım & Açıklama
**En Yakın Rakam Toplamı** sorusu, **Algoritmalar** kategorisinde **intermediate** seviye bir mülakat sorusudur.
**Problem:** Bir sayı dizisinde, toplamı hedef sayıya en yakın olan iki elemanı bul.
**Yaklaşım:**
```python
def find_closest_pair(numbers: list, target: int) -> list:
# ...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
Soru yükleniyor...
En Yakın Rakam Toplamı — Python Sorusu #70 | PythonMulakat Soruları | Python Alıştırma Soruları