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

जावास्क्रिप्ट में कनवर्ट किए बिना बाइनरी जोड़ना

<घंटा/>

समस्या

हमें एक जावास्क्रिप्ट फ़ंक्शन लिखना है जो दो बाइनरी स्ट्रिंग्स str1 और str2 को पहले और दूसरे तर्क के रूप में लेता है

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

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

इनपुट

const str1 = '1101';
const str2 = '10111';

आउटपुट

const output = '100100';

उदाहरण

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

const str1 = '1101';
const str2 = '10111';
const addBinary = (str1 = '', str2 = '') => {
   str1 = str1.split('').reverse();
   str2 = str2.split('').reverse();
   let res = '', temp = 0;

   while (str1.length || str2.length || temp) {
      temp += (~~str1.shift()) + (~~str2.shift());
      let mod = temp % 2;
      res = mod + res;
      temp = temp > 1;
   };
   return (+res) ? res.replace(/^0+/, '') : '0';
};
console.log(addBinary(str1, str2));

आउटपुट

100100

  1. जावास्क्रिप्ट में बाइनरी ट्री

    बाइनरी ट्री एक विशेष डेटा संरचना है जिसका उपयोग डेटा संग्रहण उद्देश्यों के लिए किया जाता है। एक बाइनरी ट्री की एक विशेष शर्त होती है कि प्रत्येक नोड में अधिकतम दो बच्चे हो सकते हैं। एक बाइनरी ट्री में एक क्रमबद्ध सरणी और एक लिंक की गई सूची दोनों के लाभ होते हैं क्योंकि खोज एक क्रमबद्ध सरणी में जितनी

  1. जावास्क्रिप्ट में सेट करने के लिए सरणी परिवर्तित करना

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

  1. जावास्क्रिप्ट प्रोटोटाइप में विधियों को जोड़ना

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