classSolution:defsortByBits(self, arr: List[int])-> List[int]:
res =[]
d ={}for i in arr:
n = self.oneCount(i)if n notin d:
d[n]=[]
d[n].append(i)# 字典鍵值排序for i insorted(d):# 對鍵對應的列表值排序
res+=sorted(d[i])return res
defoneCount(self, n:int)->int:
count =0if n <0:
n &=0xffffffffwhile n:
n = n&(n-1)
count +=1return count