AI Kodlama Mülakatı Soruları: Örnekler ve Alıştırmalar
Yazan: Aaron Cao · Güncellendi

Diziler, hash tabloları, ağaçlar, graflar, dinamik programlama ve hata ayıklama konularındaki sorulara hazırlanın. Alıştırma sırasında AI ipuçları önerebilir, test örnekleri sunabilir ve açıklamalarınızı değerlendirebilir. Yine de doğruluğu ve karmaşıklığı sizin kontrol etmeniz gerekir. Canlı yardımı yalnızca mülakat kuralları izin verdiğinde kullanın.
Önce hangi kodlama mülakatı sorularını çalışmalısınız?
Algoritma adlarını bilseniz bile yeni bir probleme nasıl yaklaşacağınızdan emin olmayabilirsiniz. Bu alıştırma soruları somut girdileri çözüm seçenekleriyle, karmaşıklık sınırlarıyla ve sesli olarak açıklamanız gereken uç durumlarla ilişkilendirir.
- Two Sum: değerlerinin toplamı hedefe eşit olan iki farklı indisi döndürün. [3, 3] ve hedef 6 için cevap iki konumu da kullanır. Daha önce görülen değerleri bir hash tablosunda tutarak tarayın; mevcut değeri kaydetmeden önce tamamlayıcı değeri kontrol edin. Bu, aynı indisin yeniden kullanılmasını önler. Beklenen süre O(n), ek alan ise O(n)'dir. Eşleşen çift yoksa ne döndürüleceğini netleştirin.
- Tekrarlanan karakter içermeyen en uzun alt dizgeyi bulun. 'abba' için uzunluk 2'dir. Her karakterin son konumunu izleyin ve yinelenen karakter içermeyen bir pencereyi koruyun. Eski bir oluşum mevcut pencerenin dışındaysa sol sınır hiçbir zaman geriye gitmemelidir. Hash tablosu aramalarıyla beklenen süre O(n)'dir. Neyin karakter sayıldığını netleştirin.
- Örtüşen kapalı aralıkları birleştirin. [1, 3], [3, 5] ve [8, 10] için [1, 5] ve [8, 10] döndürün. Başlangıca göre sıralayın, ardından mevcut aralığı genişletin veya yeni bir aralık başlatın. Sıralama O(n log n) süre gerektirir. Ortak uç noktası bulunan kapalı aralıklar örtüşür; bunun problemdeki tanıma uyup uymadığını sorun.
- Döngüsüz, tek yönlü bağlı bir listeyi tersine çevirin. Mevcut düğümün sonraki işaretçisini değiştirmeden önce sonraki düğümü kaydedin. Yinelemeli bir çözüm O(n) süre ve O(1) ek alan gerektirir. Boş listeyi, tek düğümü ve iki düğümü adım adım izleyin. Her yinelemeden sonra listenin hangi bölümünün ters çevrilmiş olduğunu açıklayın.
- Bir ikili ağacın değerlerini düzey düzey döndürün. Bir kuyruk kullanın ve sonraki düzeye başlamadan önce mevcut düzeydeki düğüm sayısını işleyin. Süre O(n), döndürülen çıktı hariç yardımcı kuyruk alanı ise maksimum düzey genişliğinin w olduğu durumda O(w)'dir. Boş bir ağacı ve her düzeyde yalnızca tek çocuğu olan bir ağacı test edin.
- Ön koşullar verildiğinde her dersin tamamlanıp tamamlanamayacağına karar verin. Ön koşulları yönlü bir graf olarak modelleyin ve topolojik sıralama kullanın. V köşeden daha azı işlenirse yönlü bir döngü kalır. Süre O(V + E)'dir. Bağlantısız bileşenleri, yalıtılmış bir dersi ve kendi kendine bağımlılığı test edin.
- Bir miktara ulaşmak için gereken en az madeni para sayısını bulun. Pozitif tam sayı değerlerine sahip sınırsız madeni para bulunduğunu varsayın. [1, 3, 4] ve miktar 6 için önce en büyük madeni parayı seçmek üç madeni para kullanır; 3 + 3 ise iki tane kullanır. Dinamik programlama durumunu, sıfır miktarı için sıfır madeni parayla başlayarak her miktar için gereken minimum madeni para sayısı olarak tanımlayın. Hedef A ve c farklı değer için standart yaklaşım O(Ac) süre ve O(A) alan gerektirir. Ulaşılamayan miktarları açıkça ele alın.
Rol ve konuya göre düzenlenmiş ilgili alıştırmalar için mülakat soruları kütüphanesini inceleyin.
İyi açıklanmış bir çözüm nasıl görünür?
Şu istemi ele alın: Negatif değerlere izin vererek toplamı hedefe eşit olan, boş olmayan bitişik alt dizileri sayın. [1, -1, 1] ve hedef 1 için cevap 3'tür: tek elemanlı [1] alt dizilerinden biri ya da dizinin tamamı.
Temel bir yaklaşımla başlayın: her başlangıç konumunu seçin ve değişken bir toplam tutarak bitiş konumunu ilerletin. Bu, O(n²) süre ve O(1) ek alan gerektirir. Negatif değerler, pencereyi genişletmenin toplamı artırdığı varsayımını bozduğundan, alışılagelmiş pencere daraltma yaklaşımı burada güvenilir değildir.
Daha hızlı yaklaşım önek toplamları ve bir frekans tablosu kullanır. Mevcut önek toplamı s ise s - hedef değerine eşit olan her önceki önek, gerekli toplama sahip bir alt diziyi belirler. Tabloyu, dizi başlamadan önceki boş öneki temsil eden sıfır önek toplamının bir kez görülmesiyle başlatın.
- İşleme sırası: Mevcut değeri önek toplamına ekleyin, eşleşen önceki önekleri sayın, ardından mevcut öneki kaydedin. Önce kaydetmek, hedef sıfırken boş bir alt dizinin yanlışlıkla sayılmasına neden olur.
- Değişmez: Mevcut önek kaydedilmeden önce tablo, mevcut konumdan önce biten tüm öneklerin frekanslarını içerir.
- Karmaşıklık: Her eleman sabit sayıda tablo işlemi gerçekleştirir. Hash işlemlerinin beklenen sabit sürede olduğu varsayılırsa beklenen süre O(n), ek alan O(n)'dir.
- Kontroller: Boş bir dizi 0 döndürür. [0, 0] ve hedef 0 için 3 döndürün. Sabit genişlikli tam sayı türlerinde hem birikimli toplamda hem de cevap sayısında taşma olasılığını göz önünde bulundurun.
Yararlı bir takip sorusu, görevin sayıyı mı yoksa gerçek alt dizileri mi istediğidir. Eşleşen her alt diziyi döndürmek çıktı maliyeti doğurur: tamamen sıfırlardan oluşan bir dizide hedef sıfırken n(n + 1)/2 adet boş olmayan eşleşen alt dizi vardır.
Kodlama sorularını çalışmak için AI nasıl kullanılmalı?
Yardım istemeden önce kendi çözümünüzü deneyin, ardından devam etmenizi sağlayacak en küçük müdahaleyi isteyin. Aşağıdaki istemler, bir AI görüşmesini kontrol edebileceğiniz bir alıştırmaya dönüştürür.
- Tek bir ipucu isteyin: Hangi bilgiyi saklamam gerektiğine dair tek bir ipucu ver. Henüz kod yazma veya algoritmanın tam adını söyleme.
- Akıl yürütmeyi sınayın: Döngü değişmezim burada. Uygulamamın bunu ihlal ettiği bir girdi bul veya her güncellemenin bunu neden koruduğunu açıkla. Yanıtı kendiniz kontrol edin; bir modelin onaylaması doğruluk kanıtı değildir.
- Karmaşıklığı denetleyin: Bu uygulamadaki dilimleme, sıralama, kapsayıcı işlemleri ve özyinelemeli çağrıların yaptığı işi hesapla. Bilinen bir algoritma adı, gerçek kodunuzun karmaşıklığını kanıtlamaz.
- Testler üretin: Boş girdi, yinelenen değerler, sınır değerleri ve imkânsız sonuçlar için örnekler öner. Her birinin beklenen cevabını açıkla. Bunları test doğruluk kaynağı olarak kullanmadan önce cevapları bağımsız olarak çıkarın.
- Tek bir kısıtı değiştirin: Girdi sıralıysa, değiştirilemiyorsa veya akış hâlinde geliyorsa çözüm nasıl değişir? Kodu yeniden yazmadan önce yeni ödünleşimi açıklayın.
Bir bulut sağlayıcısında kıdemli bir role hazırlanan arka uç mühendisini düşünün. Ön koşul grafı problemini çözdükten sonra bir AI alıştırma partnerinden döngü içeren bağlantısız bir graf ister. Ardından ipucuna bakmadan kuyruğu adım adım izler ve işlenen köşe sayısının döngüyü neden ortaya çıkardığını açıklar.
Tam bir çözümü okuduktan sonra kapatın ve algoritmayı, değişmezi ve testleri belleğinizden yeniden oluşturun. Kodu yeniden üretebilmek, neden çalıştığını açıklayabilmekten ve onu değişen bir kısıta uyarlayabilmekten daha az yararlıdır.
Akıl yürütmenizi görüşme sırasında açıklama alıştırması yapmak için deneme mülakatı sayfasını ziyaret edin.
SubcueAI izin verilen canlı kodlama mülakatına nasıl uyar?
SubcueAI iki canlı yardım arayüzü sunar. macOS ve Windows için amiral gemisi yerel uygulaması sistem sesini ve mikrofonunuzu yakalar; yardımı yerel, yüzen bir katmanda gösterir. Zoom ve Microsoft Teams dâhil masaüstü toplantı istemcileriyle çalışır.
Tarayıcı uzantısı da Chrome ve Edge dâhil Chromium tarayıcılarındaki Yan Panel üzerinden canlı yardım sağlar. Yalnızca toplantı sekmesinin sesini yakalayarak Google Meet gibi tarayıcı sekmesindeki görüşmeleri kapsar. Görüşmeciyi bu sekme üzerinden duyar, mikrofonunuzu hiçbir zaman yakalamaz ve adayın konuşmasını yazıya dökmez. Firefox sürümü yalnızca deneme alıştırmaları içindir.
İki arayüz de görüşmeye bir toplantı botu eklemez veya toplantı sayfasına içerik betiği yerleştirmez. Kodlama sorularında sözlü bağlamı yazılı bağlamdan ayırın: yalnızca ses yakalama, sadece bir düzenleyicide gösterilen problem açıklamasını veya kodu sağlamaz. Her öneriyi tam istem, kısıtlar ve uygulamayla karşılaştırarak kontrol edin.
Canlı yardımı kullanmadan önce mülakat kurallarını doğrulayın. SubcueAI'ın her durumda tespit edilemez olduğu söylenemez. Ekran paylaşımı, kayıt, gözetimli değerlendirmeler ve şirket tarafından yönetilen cihazlar gizlenme güvencelerinin dışındadır. Paylaşılan veya kaydedilen bir ekran, yüzen katmanı ya da Yan Paneli gösterebilir; cihaz veya gözetim kontrolleri etkinliği izleyebilir.
Kullanılabilir arayüzlere ilişkin kurulum rehberi için SubcueAI eğitimine bakın.
SSS
AI kodlama mülakatı soruları makine öğrenmesi mülakatı sorularıyla aynı mı?
Bir kodlama çözümü yazmadan önce neleri netleştirmeliyim?
Alıştırma sırasında AI'dan eksiksiz bir çözüm istemeli miyim?
AI tarafından üretilen bir çözüm testi geçemezse ne yapmalıyım?
SubcueAI bir kodlama mülakatında iki konuşmacıyı da duyabilir mi?
İlgili sorular
- En sık hangi PySpark mülakat soruları soruluyor?
- Meta mülakatlarda hangi coding sorularını sorar?
- Mülakat sorularının farklı türleri nelerdir?
- Bir AI asistanı sistem tasarımı mülakat sorularında yardımcı olabilir mi?
- Geliştiriciler mülakatlarda Copilot ve yapay zekâ kod asistanları hakkında hangi soruları alıyor?
- Hangi Java kodlama mülakat sorularını beklemeliyim?