ALIŞTIRMA TESTİTeknoloji ve kodlama
Codility tarzı kodlama testi alıştırmaları
Ücretsiz Codility tarzı deneme testi: doğruluk, zaman karmaşıklığı, bir çözümü bozan girdi ve büyük girdiler için yeterince hızlı olan çözüm üzerinden ele alınan üç kısa kodlama görevi. Her yanıt açıklanır.
- 10 ücretsiz soru, hesap gerekmez
- Gerçek test gibi süreli
- İstediğiniz zaman iptal edin
- Ücretsiz örnek
- 10 soru · 30 dk
- Bölümler
- Birinci görev: en uzun artan dizi
- İkinci görev: ilk benzersiz ID
- Üçüncü görev: en yüksek K günlük toplam
- Tam uzunlukta deneme sınavları
- Gerçek testteki soru sayısı ve süre sınırı
Kısa yanıt
Codility testi, birçok işverenin geliştiricileri ön elemeden geçirmek için kullandığı çevrimiçi bir kodlama değerlendirmesidir: mülakattan önce tarayıcıda birkaç programlama görevini çözersiniz. Tek bir Codility testi yoktur; her işveren görevleri ve süre sınırını kendisi belirler. Bu ücretsiz deneme testinde üç göreve dayanan 10 özgün soru bulunur ve test 30 dakika sürer.
- Ücretsiz örnek
- 30 dakikada 10 soru
- Biçim
- Her işveren tarafından belirlenir
- Puanlanan görevler
- Önceden belirlenmiş ölçütlere göre otomatik olarak
- Yaygın olarak bildirilen kontroller
- Doğruluk ve büyük girdilerde hız
- Tam denemelerimiz
- 90 dakikada 3 kodlama görevi
Ücretsiz deneyin
30 dakika içinde, gerçek sınav temposunda 10 soru. Sonunda puanınız ve her yanıtın açıklaması.
Planınızı seçin
Kapsamlı pratiğe erişin
Codility tarzı test: tam uzunlukta süreli deneme sınavları ve diğer tüm testler
Aylık planı başlatın- Bu test için süreli tam uzunlukta deneme sınavları
- Her soru için açıklama
- Soru türüne göre puanınız ve geçmişiniz
- 93 pratik testin tümü dahil
- Telefonda ve dizüstü bilgisayarda çalışır
En fazla bir tam deneme sınavı çözdüyseniz 7 gün içinde para iadesi. Fiyatlar USD cinsindendir.
Kapsamlı pratikte neler var?
Gerçek testin formatına ve süresine uygun tam uzunlukta deneme sınavları. Her birini bitirdiğinizde kapsamlı bir değerlendirme alırsınız.
- ÜcretsizÜcretsiz örnek10 soru · 30 dk
- Tam uzunlukta deneme sınavlarıGerçek testteki soru sayısı ve süre sınırı
- Birinci görev: en uzun artan dizi alıştırmalarıSüreli ve her cevabın açıklamasıyla
- İkinci görev: ilk benzersiz ID alıştırmalarıSüreli ve her cevabın açıklamasıyla
- Üçüncü görev: en yüksek K günlük toplam alıştırmalarıSüreli ve her cevabın açıklamasıyla
- Kapsamlı bir değerlendirmeHer deneme sınavından sonra soru türüne göre puanınız
- Birinci görev: en uzun artan dizi90%
- İkinci görev: ilk benzersiz ID75%
- Üçüncü görev: en yüksek K günlük toplam60%
Sırada şuna çalışın: üçüncü görev: en yüksek k günlük toplam.
Ücretsiz örnek veya kapsamlı pratik
| Özellik | Ücretsiz | Tam |
|---|---|---|
| Gerçek testlerin tarzında sorular | ||
| Her yanıt açıklanır | ||
| Süreli tam uzunlukta deneme sınavları | ||
| Soru türüne göre puan | ||
| Deneme sınavlarındaki puan geçmişi | ||
| 93 pratik testin tümü |
Ücretsiz çalışma kılavuzu
Gerçek test hakkında bilmeniz gereken her şey, kısa derslerle.
Gerçek test genellikle nasıl görünür?
Tek bir Codility testi yoktur. Codility bir platformdur: Her işveren, testi için görevleri, izin verilen dilleri ve süre sınırını kendisi belirler. Size gönderilen işveren daveti, sizin gireceğiniz test hakkında en iyi bilgi kaynağıdır.
Codility'nin açıkladıkları. Codility, her görevin belirlenmiş ölçütlere göre otomatik olarak puanlandığını söylüyor (Codility). Programcılar için ücretsiz dersleri (Codility), görevlerin biçimini gösteriyor: kısa bir problem, yazmanız gereken bir fonksiyon ve belirtilmiş girdi sınırları. Örneğin BinaryGap dersindeki görev, 2,147,483,647'ye kadar olan girdiler için "verimli bir algoritma" yazmanızı istiyor (Codility); derslerden birinin başlığı da Time Complexity (Codility).
Codility testleri hakkında sıkça bildirilenler (adaylardan ve rehberlerden alınmıştır; erişebildiğimiz bir Codility sayfasında doğrulanmamıştır):
- Tek bir süre sınırı içinde birkaç görev: Testin tamamı için genellikle 30 dakika ile 2 saat arasında bir süre verilir.
- Gizli doğruluk testleri: Kodunuz, görevdeki örneğe ek olarak göremediğiniz durumlarda da kontrol edilir.
- Algoritmik görevlerde büyük girdilerde performans: Doğru ama yavaş bir çözüm puan kaybettirebilir.
- Süre sınırı içindeki tamamlama süreniz puanın bir parçası değildir.
Deneme testlerimizin kapsamı. Her tam deneme testi, kolaydan zora doğru 90 dakikada üç kodlama görevi içerir. Python, JavaScript, Java veya C++ dilinde bir çözüm yazıp çalıştırırsınız. Çözümünüz gizli test durumlarında kontrol edilir ve geçtiği her durum için puan kazanırsınız. Dizüstü bilgisayar kullanmanız önerilir. Göndermeden önce geri dönüp çözümünüzü değiştirebilirsiniz.
Deneme testlerimizin farklı yönü. Gerçek Codility görevlerinin doğruluk açısından ve birçok görevde büyük girdilerdeki performans açısından kontrol edildiği sıkça bildirilir. Bizim gizli test durumlarımız küçüktür ve doğruluğu, ayrıca uç durumları kontrol eder. Bu nedenle yavaş bir çözümün süresi dolmaz; her görevin açıklamasında büyük bir girdinin gerektireceği karmaşıklık belirtilir. Ücretsiz 10 soru; bu kontrolleri geçmenin ardındaki düşünme becerilerini ölçen, doğruluk, karmaşıklık, uç durumlar ve hız hakkındaki çoktan seçmeli sorulardır.
Çözümlü örneklerle soru türleri
Her soru türü için, çoğu kişinin düştüğü tuzağı gösteren bir çözümlü örnek.
1. Hangi çözüm doğrudur? Görev: Bir listedeki farklı değerlerin sayısını döndürmek. Çözüm: len(set(A)). Boş liste de dahil her liste için doğrudur; boş liste 0 verir. Tuzak: Sıralanmış bir listeyle kendi döngünüzü yazıp ilk veya son öğeyi unutmak. Yerleşik bir işlev bu işi yapıyorsa, uç durumları ele aldığını kontrol edin ve sonra onu kullanın.
2. Zaman karmaşıklığı. Bir çözüm A üzerinde döngü kuruyor ve döngünün içinde max(A[:i]) çağrısını yapıyor. Dilimleme ve max işlemlerinin her biri en fazla i öğeye bakar; dolayısıyla toplamda yaklaşık N kare bölü 2 adım, yani O(N kare) gerekir. Bunun yerine o ana kadarki en büyük değeri tutmak, işlemi O(N) yapar. Tuzak: Tek bir döngü görüp O(N) olduğunu varsaymak. İçinde dilimleme, toplama, sayma ve arama işlemleri olup olmadığına bakın.
3. Hangi girdi hataya yol açar? Görev: A içinde olmayan en küçük pozitif tam sayıyı döndürmek. Bir çözüm max(A) + 1 döndürüyor. A = [1, 2, 3] deneyin: 4 döndürür ve bu doğrudur. A = [1, 3] deneyin: 4 döndürür, ancak 2 eksik olduğundan yanıt 2'dir. A = [-3, -1] deneyin: 0 döndürür, ancak yanıt 1'dir. Tuzak: İşe yarayan tek bir örnekten sonra denemeyi bırakmak. Uç durumları özellikle sıralayın: aradaki boşluklar, tüm değerlerin negatif olması, izin veriliyorsa boş liste, tek öğe, tüm öğelerin eşit olması ve izin verilen en büyük değerler.
4. N en fazla 100,000 olduğunda yeterince hızlı olmalı. Kabaca, bu boyutta O(N) veya O(N log N) hedefleyin. O(N kare), tipik bir süre sınırının çok ötesinde olan yaklaşık 10 milyar adım demektir. Tuzak: Her yaklaşımın anında sonuç verdiği on öğeyle test etmek. N büyüdükçe gereken işin nasıl arttığını düşünün.
5. Sınırları okuma. Değerler 1,000,000,000 kadar büyük olabiliyorsa ve N 100,000 ise toplam 100 trilyona ulaşabilir. Python'ın tam sayıları bunu karşılar; ancak sabit boyutlu tam sayılar kullanan dillerde taşma olur. Tuzak: Değer aralığını göz ardı etmek. Bu aralık, taşma ihtimalini ve sayım dizisi gibi hangi yöntemlerin kullanılabileceğini gösterir.
Nasıl hazırlanılır?
- Önce davetinizi okuyun. Görev sayısını, toplam süreyi ve izin verilen dilleri not edin. Bunları işverenler belirler; varsayımda bulunmayın.
- İyi bildiğiniz bir dili kullanın. Listeleri, sözlükleri, kümeleri, sıralama ve dize metotlarını aramadan kullanabilecek kadar iyi bilin.
- Kod yazmadan önce sınırları okuyun. Görevde belirtilen girdi boyutları ve değer aralıkları, çözümün ne kadar hızlı olması gerektiğini ve hangi uç durumların önemli olduğunu gösterir. Codility'nin kendi ders görevlerinde de bu yaklaşım kullanılır (Codility).
- Önce doğru, sonra hızlı çözün. Önce basit ve doğru bir çözüm yazın. Çözüm O(N squared) ise ve N 100,000'e ulaşabiliyorsa, bunu azaltmak için toplamı güncel tutmayı, sözlük veya küme kullanmayı ya da sıralamayı deneyin.
- Uç durumları kendiniz test edin. Görevdeki örnek yalnızca tek bir durumdur. İzin veriliyorsa boş girdi, tek öğe, tüm değerlerin aynı olması, negatif değerler, en küçük ve en büyük değerler ile en büyük N değerini deneyin.
- Sık kullanılan kalıpları öğrenin. Önek toplamları, kayan pencereler, sözlükle sayma, iki işaretçi, önce sıralama ve basit açgözlü seçimler kısa algoritma görevlerinin büyük bölümünde işe yarar. Codility'nin ücretsiz dersleri bu tarzı görmek için iyi bir yerdir (Codility).
- Süre tutarak tam çözümler yazın. Tam deneme testlerimizde gizli durumlara göre kod yazıp çalıştırırsınız. Süre içinde yazmaya alışmak için kendi seçtiğiniz görevlerde de aynısını yapın.
- Gerçek tempoda pratik yapın. Tek bir süre sınırı içinde üç görevi çözmeye sınav günü alışkın olmak için süreli tam deneme testleri yapın.
Puanlama genellikle nasıl yapılır?
Puanlama her işveren tarafından belirlenir. Codility, her görevin sabit ölçütlere göre otomatik olarak puanlandığını belirtir (Codility); hangi sonucun yeterli olduğuna ise her işveren karar verir. Her yerde geçerli tek bir geçme puanı yoktur.
Bu ölçütlerin nasıl işlediğine dair yaygın olarak aktarılan bilgiler: Bir görevin puanı, gizli doğruluk testlerinden ve birçok algoritmik görevde büyük girdilerle yapılan performans testlerinden elde edilir. Bu puanlar, önce görev sonra da test için bir yüzde oluşturacak şekilde birleştirilir. Küçük girdilerde doğru çalışan ancak büyük girdilerde çok yavaş kalan bir çözüm performans puanlarının bir kısmını kaybedebilir. Sınır durumlarından birinde başarısız olan çözüm ise doğruluk puanının bir kısmını kaybeder. Deneme testlerimizde "Doğru mu?" ve "Yeterince hızlı mı?" sorularını ayrı ayrı sormamızın nedeni budur.
Pratik puanımız, kendi sorularımızdan kaçını doğru yanıtladığınızı ve görevlere göre dökümünü gösterir; böylece hangi alanlara odaklanacağınızı görebilirsiniz. Bu bir pratik puanıdır: Codility puanı veya herhangi bir işverenin sonucu değildir ve testi geçip geçmeyeceğinizi öngörmez.
Sık yapılan hatalar
- Örneğe güvenmek. Bir görevin örneği, gizli birçok durumdan yalnızca biridir. Bir çözüm örneği geçebilir ama puanın büyük bölümünde yine başarısız olabilir.
- N değerini göz ardı etmek. O(N kare) karmaşıklığında doğru bir çözüm, N = 100,000 olduğunda performans kontrollerinde başarısız olabilir. Önce sınırları kontrol edin.
- Döngü içinde gizli işlemler yapmak. Döngü içinde bir listede dilimleme, toplam alma, sayma, indeks bulma veya "in" kullanma maliyeti katlar.
- Son öğeyi atlamak. Bir fazlalık ya da eksiklik içeren aralıklar ve listenin sonunda biten diziler, sık karşılaşılan hata nedenleridir. Son adımı elle izleyin.
- Yanlış başlangıç değerleri kullanmak. En büyük değeri 0'dan veya en küçük değeri uydurma, büyük bir sayıdan başlatmak; negatif ya da çok büyük değerlerde hataya yol açar. İlk öğeden başlayın.
- Görevin bağlı olduğu sırayı değiştirmek. Sıralama harika bir araçtır, ancak yanıt konumlara veya "listedeki ilk öğeye" bağlıysa uygun değildir.
- Tüm zamanı tek bir göreve harcamak. Önce her görev için doğru bir çözüm gönderin, ardından zaman kalırsa hızını artırın.
Özgün alıştırma soruları; gerçek veya sızdırılmış sorular değildir. Aylık planı istediğiniz zaman iptal edebilir, en fazla bir tam deneme sınavına girdiyseniz 7 gün içinde geri ödeme isteyebilirsiniz.
Sık sorulan sorular
Tüm işverenlerin kullandığı tek bir Codility testi var mı?+
Hayır. Codility bir platformdur. Her işveren görevleri, dilleri ve süre sınırını kendisi belirler; bu nedenle karşılaşacaklarınız konusunda en iyi kaynak test davetiyenizdir.
Deneme testleriniz yazdığım kodu çalıştırıyor mu?+
Evet, tam deneme testlerinde. Her görevi Python, JavaScript, Java veya C++ ile yazarsınız ve gizli test senaryolarında çalıştırılır. Başarılı olduğunuz her senaryo için puan alırsınız. Ücretsiz örnek test çoktan seçmelidir. Senaryolarımız küçük olduğundan doğruluğu ve uç durumları kontrol eder. Gerçek testlerde büyük girdilerdeki performans da sık sık kontrol edilir.
Çözümüm ne kadar hızlı olmalı?+
Her görevdeki sınırları okuyun. N yaklaşık 100,000'e kadar olduğunda O(N) veya O(N log N) karmaşıklığını hedefleyin; bu boyutta O(N kare) genellikle çok yavaştır. Sınırlar küçükse daha basit bir çözüm uygun olabilir.
Geçmek için kaç puan almam gerekiyor?+
Herkes için geçerli tek bir başarı eşiği yoktur. Sizi bir sonraki aşamaya taşıyacak sonucu her işveren belirler. Tüm uç durumlarda doğru olan ve en büyük girdi için yeterince hızlı çalışan çözümler hedefleyin.
Bunlar Codility görevleri mi?+
Hayır. Bunlar ekibimizin benzer bir tarzda hazırladığı özgün alıştırma görevleri ve sorularıdır. Intellect Council, Codility Limited veya onu kullanan herhangi bir işverenle bağlantılı değildir.
Kaynaklar
- Codility: ana sayfa (görevlerin nasıl puanlandığı), 2026-11-09 tarihinde kontrol edildi
- Codility: Programcılar, dersler, 2026-11-09 tarihinde kontrol edildi
- Codility dersleri: 1. Ders, Döngüler, BinaryGap, 2026-11-09 tarihinde kontrol edildi
- Codility dersleri: 3. Ders, Zaman Karmaşıklığı, 2026-11-09 tarihinde kontrol edildi
İlgili alıştırmalar
İş arayanlar için pratik testler
İşe alım testleri için ücretsiz süreli deneme testleri: yetenek, akıl yürütme, psikometrik, Wonderlic tarzı, CCAT tarzı ve Excel. Başlamak için hesap açmanız gerekmez.
KeşfedinPython kodlama testi pratiği
Ücretsiz Python değerlendirme pratiği: kavramlar, kodun ekrana ne yazdırdığı, hatayı bulma ve çalışan bir çözüm seçme; her biri adım adım açıklanıyor.
KeşfedinSQL testi alıştırması
Ücretsiz SQL testi pratiği: kavramlar, bir sorgunun döndürdüğü sonuçlar, bir sorguyu düzeltme ve doğru sorguyu seçme; taşınabilir standart SQL kullanılarak her biri adım adım açıklanıyor.
Keşfedin93 alıştırma testinin tümünü görün
Hazırlıklı girin.
Elinizden gelenin en iyisini yaptığınızı bilerek ayrılın.
Gerçek formatta süreli alıştırma ve her yanıtın açıklaması.