mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 08:50:15 +08:00
增加1356. 如何计算二进制中1的数量 JavaScript解法
This commit is contained in:
@ -166,6 +166,18 @@ class Solution {
|
||||
## JavaScript
|
||||
|
||||
```js
|
||||
var sortByBits = function(arr) {
|
||||
const bitCount = n =>{// 计算n的二进制中1的数量
|
||||
let count = 0;
|
||||
while(n){
|
||||
n &= (n - 1);// 清除最低位的1
|
||||
count++;
|
||||
}
|
||||
return count;
|
||||
}
|
||||
// 如果有差,则按bits数排,如果无差,则按原值排
|
||||
return arr.sort((a,b) => bitCount(a) - bitCount(b) || a - b);
|
||||
};
|
||||
```
|
||||
|
||||
-----------------------
|
||||
|
Reference in New Issue
Block a user