Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một mảng các số nguyên không âm duy nhất. Hàm của chúng ta sẽ trả về một số nguyên 32 bit sao cho số nguyên, trong biểu diễn nhị phân của nó, chỉ có 1 ở các chỉ mục đó (được tính từ bên phải) trong chuỗi.
Ví dụ
Sau đây là mã -
const arr = [1, 2, 0, 4]; const buildDecimal = (arr = []) => { const bitArr = Array(31).fill(0); let res = 0; arr.forEach(el => { bitArr.splice((31 - el), 1, 1); }) bitArr.forEach((bit, index) => { res += (2 * (31-index) * bit); }); return res; }; console.log(buildDecimal(arr));
Đầu ra
Sau đây là đầu ra của bảng điều khiển -
14