समस्या
हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो संख्याओं की एक सरणी लेता है। हमारा फ़ंक्शन उन संख्याओं को उनके बाइनरी प्रतिनिधित्व में मौजूद 1s की घटती संख्या के अनुसार क्रमबद्ध करेगा और नई सरणी लौटाएगा।
उदाहरण
निम्न कोड देखें:
const arr = [5, 78, 11, 128, 124, 68, 6]; const countOnes = (str = '') => { let count = 0; for(let i = 0; i < str.length; i++){ const el = str[i]; if(el === '1'){ count++; }; }; return count; }; const sortByHighBit = (arr = []) => { arr.sort((a, b) => countOnes(b) - countOnes(a)); return arr; }; console.log(sortByHighBit(arr));आउटपुट
[ 5, 78, 11, 128, 124, 68, 6 ]