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

JavaScript में डिजिट रूट के अनुसार नंबर्स को सॉर्ट करना


डिजिट रूट

एक पॉजिटिव इंटीजर का डिजिट रूट उसके सभी डिजिट्स के योग के रूप में परिभाषित किया गया है।

हमें एक JavaScript फ़ंक्शन लिखना है जो इंटीजर्स के ऐरे को लेता है। फ़ंक्शन को इस तरह सॉर्ट करना चाहिए कि यदि a, b से पहले आता है तो a का डिजिट रूट b के डिजिट रूट से कम या बराबर हो। यदि दो नंबर्स का डिजिट रूट समान है, तो छोटा वाला (सामान्य अर्थ में) पहले आना चाहिए।

उदाहरण के लिए, 4 और 13 का डिजिट रूट समान है, हालांकि 4 < 13 इसलिए 4, 13 से पहले आता है किसी भी डिजिटरूट सॉर्टिंग में जहां दोनों मौजूद हैं।

उदाहरण के लिए:

यदि इनपुट ऐरे है:

const arr = [13, 20, 7, 4];

तो आउटपुट होना चाहिए:

const output = [20, 4, 13, 7];

उदाहरण

const arr = [13, 20, 7, 4]; const digitSum = (num, sum = 0) => {    if(num){       return digitSum(Math.floor(num / 10), sum + (num % 10));    };    return sum; }; const digitalSort = (arr = []) => {    const sorter = (a, b) => {       return (digitSum(a) - digitSum(b)) || (a - b);    };    arr.sort(sorter); }; digitalSort(arr); console.log(arr);

आउटपुट

इससे निम्नलिखित आउटपुट प्राप्त होगा:

[ 20, 4, 13, 7 ]

  1. - JavaScript ऐरे के अंत में एलिमेंट कैसे जोड़ें?

    अंत में एलिमेंट जोड़ने के लिए, JavaScript push() मेथड का उपयोग करें। JavaScript ऐरे push() मेथड दिए गए एलिमेंट(स) को ऐरे के अंत में जोड़ता है और नए ऐरे की लंबाई लौटाता है। उदाहरण ऐरे के अंत में एलिमेंट जोड़ने के लिए निम्न कोड चलाएं: <html> <head> <title>JavaScript Array push

  1. - JavaScript में 2 का वर्गमूल कैसे प्राप्त करें?

    2 का वर्गमूल प्राप्त करने के लिए JavaScript Math.SQRT2 प्रॉपर्टी का उपयोग करें। यह 2 का वर्गमूल लौटाता है जो लगभग 1.414 होता है। उदाहरण JavaScript में 2 का वर्गमूल प्राप्त करने के लिए निम्न कोड चलाएं: <html> <head> <title>JavaScript Math SQRT2 Property</title> </h

  1. JavaScript नंबर्स उदाहरण JavaScript नंबर्स उदाहरण

    JavaScript में नंबर्स के लिए एक उदाहरण निम्न है -उदाहरण<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> &