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

जावास्क्रिप्ट में सरणी को अद्वितीय बनाना

<घंटा/>

समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना आवश्यक है जो संख्याओं की एक सरणी लेता है, एआर, पहले और एकमात्र तर्क के रूप में।

एक चाल में किसी भी गिरफ्तारी [i] को चुनना और इसे 1 से बढ़ाना शामिल है। हमारा कार्य सरणी में प्रत्येक मान को अद्वितीय बनाने के लिए कम से कम चालों को वापस करना है।

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

const arr = [12, 15, 7, 15];

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

const output = 1;

आउटपुट स्पष्टीकरण

क्योंकि अगर हम किसी 15 से 16 तक की वृद्धि करते हैं, तो सरणी में सभी अद्वितीय तत्व शामिल होंगे।

उदाहरण

इसके लिए कोड होगा -

const arr = [12, 15, 7, 15];
const makeUnique = (arr = []) => {
   arr.sort((a, b) => a - b);
   let count = 0;
   for (let i = 1; i < arr.length; i++) {
      if (arr[i] <= arr[i - 1]) {
         const temp = arr[i]
         arr[i] = arr[i - 1] + 1
         count += arr[i] - temp
      };
   };
   return count;
};
console.log(makeUnique(arr));

आउटपुट

और कंसोल में आउटपुट होगा -

1

  1. जावास्क्रिप्ट Array.prototype.map() फ़ंक्शन

    जावास्क्रिप्ट के Array.prototype.map() फ़ंक्शन का उपयोग कॉल किए गए फ़ंक्शन के परिणामों के साथ एक नई सरणी बनाने के लिए किया जाता है। वाक्य रचना इस प्रकार है - arr.map(function callback(currentValue[, index[, array]]) आइए अब जावास्क्रिप्ट में Array.prototype.map() पद्धति को लागू करें - उदाहरण <!D

  1. जावास्क्रिप्ट बेसिक ऐरे मेथड्स

    कुछ बुनियादी जावास्क्रिप्ट सरणी विधियाँ हैं - विधि विवरण Array.push() सरणी के अंत में तत्वों को जोड़ने के लिए। Array.pop() सरणी के अंत से तत्वों को हटाने के लिए। Array.unshift() सरणी के सामने तत्वों को जोड़ने के लिए Array.shift() सरणी के सामने से तत्वों को हटाने के लिए। Array.splice() ब्य

  1. जावास्क्रिप्ट सरणी में सभी अद्वितीय मान कैसे प्राप्त करें?

    जावास्क्रिप्ट सरणी में सभी अद्वितीय मान प्राप्त करने के लिए कोड निम्नलिखित है - उदाहरण <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <t