7 of 17 menu

Lỗi tìm giá trị trung bình từ mảng

Hãy xem xét lỗi liên quan đến việc tìm giá trị trung bình cộng từ các phần tử của mảng. Ví dụ chúng ta có một mảng như sau:

let arr = [1, 2, 3, 4, 5];

Để tìm trung bình của các phần tử, cần tìm tổng của chúng và chia cho số lượng. Một lập trình viên nào đó đã giải quyết nhiệm vụ này theo cách sau:

let avg = 0; for (let elem of arr) { avg += elem / arr.length; } console.log(avg);

Hãy xem xét các vấn đề của giải pháp này. Về mặt kỹ thuật, mã hoạt động đúng và cho đáp án đúng. Vấn đề là về mặt toán học, cả việc chia toàn bộ tổng cho số lượng lẫn chia từng số hạng cho số lượng đều đúng.

Tuy nhiên, một vấn đề khác nảy sinh. Vấn đề là chúng ta sẽ thực hiện phép chia số lần bằng với số phần tử trong mảng. Và kết quả là chúng ta thực hiện một số lượng lớn các phép toán thừa, bởi vì phép chia lẽ ra có thể được thực hiện ở cuối - một lần, bằng cách chia toàn bộ tổng tìm được.

Hãy tối ưu hóa mã của chúng ta:

let sum = 0; for (let elem of arr) { sum += elem; } let avg = sum / arr.length; console.log(avg);
Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối