mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 16:54:50 +08:00
增加1356. 如何计算二进制中1的数量 JavaScript解法
This commit is contained in:
@ -166,6 +166,18 @@ class Solution {
|
|||||||
## JavaScript
|
## JavaScript
|
||||||
|
|
||||||
```js
|
```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