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

सी ++ में बाइनरी प्रतिनिधित्व में एक्सओआर 0s और 1s की गणना करता है

इस समस्या में हमें एक नंबर दिया जाता है। हमारा काम संख्या के द्विआधारी प्रतिनिधित्व में 0s और 1s की गिनती के XOR को खोजना है।

समस्या को समझने के लिए एक उदाहरण लेते हैं,

इनपुट

n = 9

आउटपुट

0

स्पष्टीकरण

binary = 1001
Count of 0s = 2
Count of 1s = 2
2 ^ 2 = 0

इस समस्या को हल करने के लिए, हम पहले इसके बाइनरी समकक्ष की संख्या को परिवर्तित करेंगे और फिर संख्या के प्रत्येक बिट पर पुनरावृति करेंगे, 0s और 1s की गणना करेंगे और फिर 0s की संख्या और 1s की संख्या का XOR ज्ञात करेंगे।

उपरोक्त समाधान को स्पष्ट करने के लिए कार्यक्रम,

उदाहरण

#include<iostream>
using namespace std;
int countXOR10(int n) {
   int count0s = 0, count1s = 0;
   while (n){
      (n % 2 == 0) ? count0s++ :count1s++;
      n /= 2;
   }
   return (count0s ^ count1s);
}
int main() {
   int n = 21;
   cout<<"XOR of count of 0s and 1s in binary of "<<n<<" is "<<countXOR10(n);
   return 0;
}

आउटपुट

XOR of count of 0s and 1s in binary of 21 is 1

  1. सी ++ में बाइनरी ट्री को सीरियलाइज़ और डिसेरिएलाइज़ करें

    मान लीजिए कि हमारे पास एक बाइनरी ट्री है और हमें उन्हें क्रमबद्ध और डिसेरिएलाइज़ करना है। जैसा कि हम जानते हैं कि क्रमांकन डेटा संरचना या ऑब्जेक्ट को बिट्स के अनुक्रम में परिवर्तित करने की प्रक्रिया है, इसलिए हम उन्हें एक फ़ाइल या मेमोरी बफर में स्टोर कर सकते हैं, और जिसे बाद में उसी या किसी अन्य कं

  1. C++ में एक बाइनरी ट्री (पुनरावर्ती और पुनरावर्ती) में पूर्ण नोड्स की गणना करें

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

  1. C++ में एक बाइनरी ट्री (पुनरावर्ती और पुनरावर्ती) में आधे नोड्स की गणना करें

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