Latihan 1 dari materi Flame Graphs & CPU Profiling di Debugging — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.
Analisis profil CPU yang berbentuk array { name, totalMs, selfMs }. Implementasikan:
topBySelf(profile, n) — return n fungsi dengan selfMs tertinggi (descending). Return array nama saja.topByTotal(profile, n) — return n fungsi dengan totalMs tertinggi (descending). Return array nama saja.findHotspots(profile, minSelfMs) — return fungsi dengan selfMs >= minSelfMs, sorted descending by selfMs. Return array nama saja.selfTimePercent(profile, name) — return persentase (number, sudah dibulatkan ke integer) kontribusi selfMs dari fungsi name terhadap total selfMs semua fungsi. Return 0 jika tidak ada.