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

पायथन में मैप फंक्शन का उपयोग करके बाइनरी स्ट्रिंग में लगातार 1 की अधिकतम लंबाई

कभी-कभी संख्याओं के बाइनरी प्रतिनिधित्व से निपटने के दौरान हमें यह पता लगाने की आवश्यकता हो सकती है कि संख्या में कितने निरंतर 1 मौजूद हैं। यह लेख दो तरीके दिखाता है कि हम इसका पता कैसे लगा सकते हैं।

Split और Map का उपयोग करना

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

उदाहरण

data = '11110000111110000011111010101010101011111111'
def Max_len_cons_1(data):
    print("Maximum Number of consecutive one's: ", max(map(len, data.split('0'))))
Max_len_cons_1(data)

आउटपुट

उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है -

Maximum Number of consecutive one's: 8

रेगुलर एक्सप्रेशन का उपयोग करना

पायथन में re मॉड्यूल का उपयोग लगातार 1 की अधिकतम संख्या गिनने के लिए भी किया जा सकता है। यहां हम 1+ का पैटर्न ढूंढते हैं जो एक या अधिक 1 की उपस्थिति को दर्शाता है। फिर उन पैटर्न में अधिकतम लंबाई ढूंढते हैं।

उदाहरण

data = '11110000111110010011'
import re
the_ones = re.findall(r"1+", data)
print("The blocks of one's: ", the_ones)
print("Maximum Number of consecutive one's =", len(max(the_ones, key=len)))

आउटपुट

उपरोक्त कोड चलाने से हमें निम्न परिणाम मिलता है -

The blocks of one's: ['1111', '11111', '1', '11']
Maximum Number of consecutive one's = 5
  1. पायथन में DFA का उपयोग करके जांचें कि बाइनरी स्ट्रिंग 3 का गुणक है या नहीं पायथन में DFA का उपयोग करके जांचें कि बाइनरी स्ट्रिंग 3 का गुणक है या नहीं

    मान लीजिए हमारे पास एक सरणी n है जो किसी संख्या के बाइनरी प्रतिनिधित्व को दर्शाती है। हमें डिटरमिनिस्टिक फाइनाइट ऑटोमेटा (DFA) का उपयोग करके जांचना है कि इसका बाइनरी प्रतिनिधित्व 3 से विभाज्य है या नहीं। उदाहरण के लिए, यदि n = [1, 1, 0, 0] (12 का बाइनरी) है, तो आउटपुट True होगा। हल करने का तरीका हम

  1. - Python में map() फ़ंक्शन का उपयोग करके 2D सरणी का योग

    इस ट्यूटोरियल में, हम Python में map फ़ंक्शन का उपयोग करके 2D सरणी का योग ढूंढने जा रहे हैं। map फ़ंक्शन दो तर्क लेता है यानी function और iterable। यह इटरेटेबल के प्रत्येक तत्व को फ़ंक्शन में पास करता है और परिणाम को map ऑब्जेक्ट में संग्रहीत करता है। हम map ऑब्जेक्ट को एक इटरेटेबल में बदल सकते हैं।

  1. पायथन प्रोग्राम: लगातार 1 के बिना बाइनरी स्ट्रिंग्स की संख्या गिनें पायथन प्रोग्राम: लगातार 1 के बिना बाइनरी स्ट्रिंग्स की संख्या गिनें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक धनात्मक पूर्णांक N दिया गया है, हमें लंबाई N की सभी संभावित अलग बाइनरी स्ट्रिंग्स गिननी हैं जिनमें लगातार 1 न हों। उदाहरण # स्ट्रिंग्स की संख्या गिनें def countStrings(n): a = [0 for i in range(n)] b = [0 for i in r