Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> JavaScript

JavaScript में संख्याओं को उनके अंक योग के आधार पर सॉर्ट करना

समस्या

हमें एक JavaScript फ़ंक्शन लिखना है जो धनात्मक पूर्णांकों की एक सरणी, arr, को पहला और एकमात्र तर्क के रूप में लेता है।

हमारे फ़ंक्शन को इनपुट सरणी को इस तरह सॉर्ट करना चाहिए कि जिस संख्या का अंक योग सबसे अधिक है वह पहले आए, उसके बाद कम अंक योग वाली संख्याएं आएं।

उदाहरण के लिए, यदि फ़ंक्शन का इनपुट है -

इनपुट

const arr = [5, 34, 1, 13, 76, 8, 78, 101, 57, 565];

आउटपुट

const output = [565, 78, 76, 57, 8, 34, 5, 13, 101, 1];

आउटपुट व्याख्या

क्योंकि 565 का अंक योग 16 है जो सबसे अधिक है, उसके बाद 78 और 76 आते हैं और 101 और 1 का अंक योग क्रमशः 2 और 1 है जो सबसे कम है।

उदाहरण

निम्नलिखित कोड है -

const arr = [5, 34, 1, 13, 76, 8, 78, 101, 57, 565];
const addDigits = (num, sum = 0) => {
  if (num) {
    return addDigits(Math.floor(num / 10), sum + (num % 10));
  }
  return sum;
};
const sortByDigitSum = (arr = []) => {
  arr.sort((a, b) => {
    return addDigits(b) - addDigits(a);
  });
  return arr;
};
sortByDigitSum(arr);
console.log(arr);

आउटपुट

[ 565, 78, 76, 57, 8, 34, 5, 13, 101, 1 ]
  1. - JavaScript में ऐरे से n सबसे छोटी संख्याओं को उनके मूल क्रम में प्राप्त करना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो नंबर्स का एक ऐरे arr, और एक संख्या n लेता है। हमारा फ़ंक्शन ऐरे arr से n सबसे छोटी संख्याओं को उनके सापेक्ष क्रम को बाधित किए बिना प्राप्त करना चाहिए। इसका मतलब है कि उन्हें बढ़ते या घटते क्रम में व्यवस्थित नहीं किया जाना चाहिए बल्कि वे अपने मूल क्रम को ब

  1. - JavaScript में सरणी इंडेक्स ढूंढना जो बाएं और दाएं योग को संतुलित करे

    समस्या हमें एक JavaScript फ़ंक्शन लिखना है जो पूर्णांकों की एक सरणी, arr, को पहला और एकमात्र तर्क के रूप में लेता है। हमारे फ़ंक्शन को सरणी से एक ऐसा इंडेक्स चुनकर वापस करना आवश्यक है जिसके बाईं ओर के तत्वों का योग उसके दाईं ओर के तत्वों के योग के बराबर हो। यदि सरणी में ऐसा कोई इंडेक्स मौजूद नहीं है

  1. - JavaScript में तत्वों की बढ़ती आवृत्ति के आधार पर सरणी को सॉर्ट करना

    समस्याहमें एक JavaScript फ़ंक्शन लिखना है जो संख्याओं की एक सरणी arr को एकमात्र आर्गुमेंट के रूप में लेता है। सरणी arr में डुप्लिकेट हो सकते हैं। हमारा फ़ंक्शन सरणी को इस तरह सॉर्ट करना चाहिए कि कम बार आने वाले तत्व पहले आएं, फिर बढ़ती आवृत्ति के क्रम में। यदि दो तत्व समान बार आते हैं, तो उन्हें बढ़