मान लीजिए कि हमारे पास एक अहस्ताक्षरित संख्या n है। हमें इस संख्या के द्विआधारी निरूपण में 1s की संख्या ज्ञात करनी है। इसे हैमिंग वेट के नाम से भी जाना जाता है। तो अगर संख्या 000000101101 की तरह है, तो परिणाम 4 होगा।
इसे हल करने के लिए, हम इन चरणों का उपयोग करेंगे -
- नंबर लें और इसे बाइनरी स्ट्रिंग में बदलें
- सेट काउंट =0
- एक बाइनरी स्ट्रिंग में प्रत्येक वर्ण ई के लिए
- अगर कैरेक्टर '1' है, तो काउंट को 1 से बढ़ा दें
- वापसी की संख्या
उदाहरण
आइए एक बेहतर समझ प्राप्त करने के लिए निम्नलिखित कार्यान्वयन देखें -
class Solution(object): def hammingWeight(self, n): """ :type n: int :rtype: int """ n = str(bin(n)) print(n) one_count = 0 for i in n: if i == "1": one_count+=1 return one_count num = "000000101101" ob1 = Solution() print(ob1.hammingWeight(num))
इनपुट
num = "000000101101"
आउटपुट
4