Langkau ke kandungan
WANCODE
EN

Cari Bug dalam Array

15 minitPertengahanDebugging

Papan pendahulu menunjukkan 95, 9, 88 sebagai tiga teratas — tetapi ada orang dapat 100! Dan baris "All scores" bukan lagi dalam susunan asal skor itu masuk. Function ini nampak munasabah pada pandangan pertama. Debug.

JavaScript
topThree([88, 9, 100, 72, 95, 7])  // [100, 95, 88]
topThree([5, 40, 300])              // [300, 40, 5]
topThree([42])                      // [42]   (fewer than 3 is fine)
topThree([])                        // []

Hasil yang dijangka

Kekangan

  • Pulangkan array nombor yang baharu, tertinggi dahulu. Nilai sama dikira berasingan ([10, 10, 3] sah).
  • Jangan ubah array yang dihantar masuk — kod lain masih memerlukannya dalam susunan asal.
  • Skor boleh jadi apa-apa nombor, termasuk negatif.

topThree(scores) sepatutnya memulangkan tiga skor tertinggi, yang tertinggi dahulu, tanpa mengubah array asal. Ia memulangkan skor yang salah dan merosakkan input — cari dan baiki bug tersebut.

Semakan

  • Memulangkan tiga teratas sebenar, tertinggi dahulu
  • Array asal tidak diubah
  • Mengendalikan array pendek, nilai sama dan negatif
Pratonton

Output konsol daripada kod anda akan dipaparkan di sini.

Langkah 1 daripada 1