Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula)
Gunakan intuisi Big-O dan fokus pada jalur panas. Ganti pemindaian bersarang dengan Set/Map, hindari pekerjaan berulang, dan jaga kode tetap kecil serta jelas
Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula) adalah pelajaran JavaScript Academy gratis di CoddyKit. Ini adalah pelajaran 1 dari 3. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar JavaScript Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus JavaScript Academy mencakup 3 pelajaran total.
Gambaran umum
Tujuan: Dapatkan peningkatan cepat tanpa teori yang rumit.
- Intuisi Big-O: hindari perulangan ganda
- Jalur panas dan dingin: optimalkan bagian yang paling sering dijalankan
- Set/Map untuk pencarian cepat
- Lakukan pekerjaan sekali, gunakan kembali hasilnya

Pemindaian bersarang = mahal
Pemindaian yang dibuat bersarang melipatgandakan pekerjaan. Setiap includes berjalan melewati larik sekali lagi.
// 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);

Set untuk keanggotaan
Buat Set sekali; gunakan has untuk memeriksa keanggotaan dengan cepat. Cara ini menghilangkan pemindaian bagian dalam.
// 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);

Map untuk hitungan
Map menyimpan hitungan untuk pembacaan yang kira-kira O(1) setelahnya; hindari memindai ulang larik untuk menghitung kembali.
// 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"));

Lakukan sekali (cache)
Jika suatu nilai berulang, cache hasilnya. Bagi pemula, buat cache tetap kecil dan jelas.
// 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

Fokus pada jalur panas
Jalur panas: dijalankan berkali-kali (optimalkan bagian ini). Jalur dingin: kode yang jarang dijalankan (buat tetap sederhana).
- Hapus perulangan bagian dalam dari kode panas.
- Gunakan Set/Map untuk tugas keanggotaan atau penghitungan yang panas.
- Lakukan pengukuran nanti; mulailah dari kejelasan.

Kuis optimasi keanggotaan
Pemeriksaan singkat: Kurangi pemindaian bersarang.

Ringkasan
Ringkasan: Hindari pemindaian bersarang, gunakan Set/Map untuk pencarian dan penghitungan, serta lakukan pekerjaan sekali. Fokus pada jalur panas; buat kode pada jalur dingin tetap sederhana.

Pertanyaan yang Sering Diajukan
Apakah pelajaran “Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula)” gratis?
Ya — teks lengkap “Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula)” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus JavaScript Academy, upgrade ke CoddyKit PRO. Kursus JavaScript Academy mencakup 3 pelajaran total.
Apa yang akan aku pelajari di “Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula)”?
Gunakan intuisi Big-O dan fokus pada jalur panas. Ganti pemindaian bersarang dengan Set/Map, hindari pekerjaan berulang, dan jaga kode tetap kecil serta jelas Kamu berlatih JavaScript Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai JavaScript Academy?
Tidak diperlukan pengalaman sebelumnya. JavaScript Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 3.
Berapa lama pelajaran “Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula)” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran JavaScript Academy ini?
Ya. Setiap pelajaran JavaScript Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Dasar Big-O, Jalur Panas vs Dingin (Kemenangan Pemula)
- Menghindari Kebocoran — Closure, Pewaktu, Referensi
- Pengantar Pembuatan Profil (Node/DevTools) — Kebiasaan Mengukur Waktu