Big-O ile İşlemleri Sayma
Sabit zamandan karesel zamana, anlaşılır biçimde.
Big-O ile İşlemleri Sayma, CoddyKit'te ücretsiz bir Competitive Programming Academy dersidir. Bu, 4 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Competitive Programming Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Competitive Programming Academy kursu toplamda 4 dersten oluşur.
İşlemleri Neden Sayarsınız
Yarışmalarda hız kazanır. Kodunuzun süresini ölçmek yerine kaç adım sürdüğünü tahmin edersiniz. Bu tahmin, kodun zaman karmaşıklığıdır. 🚀
Büyük O ile Tanışın
Büyük O, girdi boyutu n büyüdükçe işlem sayısının nasıl arttığını açıklar. Küçük ayrıntıları göz ardı eder ve baskın eğilime odaklanır.
Sabit Zaman O(1)
Yapılan iş n'ye hiç bağlı değilse karmaşıklık O(1) olur. Bir liste öğesini okumak veya tek bir toplama yapmak her zaman aynı süreyi alır.
x = arr[0]
y = a + bDoğrusal Zaman O(n)
n öğe üzerinde yapılan tek bir basit döngü O(n)'dir. Girdiyi iki katına çıkarırsanız iş miktarı da yaklaşık iki katına çıkar. Bu, günlük işlerin temel aracıdır.
for x in arr:
total += xKaresel Zaman O(n kare)
n öğe üzerinde bir döngünün başka bir döngünün içinde bulunması O(n^2) verir. n = 1000 için bu bir milyon adımdır ve bundan sonra hızla büyür.
for i in range(n):
for j in range(n):
check(i, j)Logaritmik Zaman O(log n)
Her adım problemi ikiye bölüyorsa O(log n) elde edersiniz. İkili arama, bir milyar öğeye yalnızca yaklaşık 30 adımda ulaşır. ✨
Büyüme Basamakları
Yaygın sıralama, en hızlıdan en yavaşa şöyledir: O(1), O(log n), O(n), O(n log n), O(n^2). Daha üstte olmak, daha iyi ölçeklenmek anlamına gelir.
Sabit Çarpanları Atın
Büyük O sabit çarpanları göz ardı eder; bu nedenle O(2n) yalnızca O(n) olur. İki geçiş de doğrusal büyür, dolayısıyla çarpan karmaşıklık sınıfını değiştirmez.
Yalnızca En Büyük Terimi Tutun
Terimler toplandığında yalnızca en hızlı büyüyen terim önemlidir. O(n^2 + n), n büyüdükçe n^2 n'yi çok geride bıraktığı için O(n^2) olarak sadeleşir.
Ardışık ve İç İçe Döngüler
Arka arkaya gelen iki döngünün toplamı O(n + n) = O(n) olur. İç içe iki döngü ise O(n^2) verir. Hangisinin geçerli olduğunu döngülerin yapısı gösterir.
Önce En Kötü Durumu Düşünün
Yarışmalar en zor girdi üzerinden değerlendirilir, bu nedenle en kötü durumu düşünmeniz gerekir. Döngünün erken döneceğini değil, tamamen çalışacağını varsayın.
Hızlı Kontrol
Büyük O sezgilerinizi sınama zamanı.
Özet
Artık kodu büyüme açısından okuyabiliyorsunuz: O(1), O(n), O(n^2) ve O(log n). Sabitleri atın, en büyük terimi tutun ve en kötü durumu düşünün. 🎯
Sıkça Sorulan Sorular
“Big-O ile İşlemleri Sayma” dersi ücretsiz mi?
Evet — “Big-O ile İşlemleri Sayma” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Competitive Programming Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Competitive Programming Academy kursu toplamda 4 dersten oluşur.
“Big-O ile İşlemleri Sayma” dersinde ne öğreneceğim?
Sabit zamandan karesel zamana, anlaşılır biçimde. Competitive Programming Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Competitive Programming Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Competitive Programming Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 1. dersidir.
“Big-O ile İşlemleri Sayma” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Competitive Programming Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Competitive Programming Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Big-O ile İşlemleri Sayma
- 10^8 Pratik Kuralı
- Kısıtlamaları Okuma, Karmaşıklığı Seçme
- TLE Neden Olur ve Nasıl Fark Edilir