0Pricing
JavaScript Academy · Ders

Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları)

Big-O sezgisini kullanın ve sıcak yollara odaklanın. İç içe taramaları Set/Map ile değiştirin, yinelenen işlerden kaçının ve kodu küçük, anlaşılır tutun.

Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları), CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 3 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, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 3 dersten oluşur.

Genel bakış

Hedef: Karmaşık teoriye girmeden hızlı kazanımlar elde etmek.

  • Big-O sezgisi: iç içe döngülerden kaçının
  • Sıcak ve soğuk yollar: en çok çalışanı iyileştirin
  • Hızlı aramalar için Set/Map
  • İşi bir kez yapın, sonuçları yeniden kullanın
Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 1

İç içe tarama maliyetlidir

Taramaları iç içe yerleştirmek işi katlar. Her includes diziyi yeniden tarar.

// Bad pattern: nested scan for membership (can be ~O(n^2))
const haystack = ["a","b","c","d","e"];
const needles = ["b","e","x"];
const foundSlow = [];

for (const n of needles) {
  // includes scans the array each time
  if (haystack.includes(n)) {
    foundSlow.push(n);
  }
}
console.log("slow found:", foundSlow);
Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 2

Üyelik için Set

Bir Set oluşturun; hızlı üyelik kontrolü için has kullanın. Böylece iç tarama ortadan kalkar.

// Better: build a Set once, then O(1)-ish checks (~O(n) overall)
const fastSet = new Set(haystack);
const foundFast = [];
for (const n of needles) {
  if (fastSet.has(n)) {
    foundFast.push(n);
  }
}
console.log("fast found:", foundFast);
Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 3

Sayım için Map

Map, sonraki okumalar için sayımları yaklaşık O(1) sürede saklar; yeniden saymak için dizileri tekrar taramaktan kaçının.

// Build a frequency map once instead of scanning many times
const words = ["a","b","a","a","c","b"];
const freq = new Map();

for (const w of words) {
  const old = freq.get(w) || 0;
  freq.set(w, old + 1);
}

console.log("count a:", freq.get("a"));
console.log("count b:", freq.get("b"));
Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 4

Bir kez yapın (önbellek)

Bir değer tekrarlanıyorsa sonucu cache ile saklayın. Yeni başlayanlar için önbellekleri küçük ve anlaşılır tutun.

// Do work once and reuse (tiny cache)
function heavy(x) {
  // pretend heavy math
  return x * x + 1;
}

const cache = new Map();

function heavyCached(x) {
  if (cache.has(x)) return cache.get(x);
  const val = heavy(x);
  cache.set(x, val);
  return val;
}

console.log("first:", heavyCached(5));
console.log("second:", heavyCached(5)); // cached
Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 5

Sıcak yollara odaklanın

Sıcak yol: birçok kez çalışır (burayı iyileştirin). Soğuk yol: nadiren çalışan koddur (basit tutun).

  • Sıcak koddaki iç döngüleri kaldırın.
  • Sıcak üyelik ve sayım işlemlerinde Set/Map kullanın.
  • Daha sonra ölçün; açıklıkla başlayın.
Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 6

Üyelik iyileştirmesi testi

Hızlı kontrol: İç içe taramaları azaltma.

Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 7

Özet

Özet: İç içe taramalardan kaçının, aramalar ve sayımlar için Set/Map kullanın ve işi bir kez yapın. Sıcak yollara odaklanın; soğuk kodu basit tutun.

Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları) — resim 8

Sıkça Sorulan Sorular

“Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları)” dersi ücretsiz mi?

Evet — “Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları)” 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 JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 3 dersten oluşur.

“Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları)” dersinde ne öğreneceğim?

Big-O sezgisini kullanın ve sıcak yollara odaklanın. İç içe taramaları Set/Map ile değiştirin, yinelenen işlerden kaçının ve kodu küçük, anlaşılır tutun. JavaScript 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.

JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te JavaScript 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, 3 dersinin 1. dersidir.

“Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları)” 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 JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her JavaScript 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

  1. Big-O Temelleri, Sıcak ve Soğuk Yollar (Başlangıç Kazanımları)
  2. Sızıntılardan Kaçınma — Kapanımlar, Zamanlayıcılar, Başvurular
  3. Profil Oluşturmaya Giriş (Node/DevTools) — Küçük Zamanlama Alışkanlıkları
← JavaScript Academy Sayfasına Dön