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

पायथन में प्रत्येक ब्रैकेट गहराई में वर्णों की संख्या गिनने का कार्यक्रम

मान लीजिए कि हमारे पास एक स्ट्रिंग है जिसमें केवल तीन वर्ण "X", "(", और ")" हैं। स्ट्रिंग में संतुलित कोष्ठक होते हैं और कुछ "X" के बीच में संभावित रूप से नेस्टेड कोष्ठक भी पुनरावर्ती रूप से हो सकते हैं। हमें s में कोष्ठक की प्रत्येक गहराई पर "X" की संख्या ज्ञात करनी है, जो सबसे कम गहराई से शुरू होकर सबसे गहरी गहराई तक है।

इसलिए, यदि इनपुट s ="(XXX(X(XX))XX)" जैसा है, तो आउटपुट [5, 1, 2]

होगा

पायथन में प्रत्येक ब्रैकेट गहराई में वर्णों की संख्या गिनने का कार्यक्रम

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • गहराई :=-1
  • बाहर:=एक नई सूची
  • प्रत्येक c in s के लिए, करें
    • यदि c "(" के समान है, तो
      • गहराई :=गहराई + 1
    • अन्यथा जब c ")" के समान हो, तब
      • गहराई:=गहराई - 1
    • यदि गहराई आउट के आकार के समान है, तो
      • आउट के अंत में 0 डालें
    • यदि c "X" के समान है, तो
      • बाहर[गहराई] :=बाहर[गहराई] + 1
  • वापसी

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

 डीईएफ़ सॉल्व (एस):डेप्थ =-1 आउट =[] सी इन एस के लिए:अगर सी =="(":डेप्थ + =1 एलिफ सी ==")":डेप्थ - =1 अगर डेप्थ ==लेन (आउट):आउट.एपेंड (0) अगर सी =="एक्स":आउट [गहराई] + =1 रिटर्न आउट ="(एक्सएक्सएक्स (एक्स (एक्सएक्स)) एक्सएक्स)" प्रिंट (समाधान (एस)) पूर्व> 

इनपुट

"(XXX(X(XX))XX)"

आउटपुट

[5, 1, 2]

  1. पायथन में दो मानचित्रों में अतिव्यापी द्वीपों की संख्या गिनने का कार्यक्रम

    मान लीजिए कि हमारे पास दो बाइनरी मैट्रिक्स हैं mat1 तथा mat2। यहां 1 भूमि का प्रतिनिधित्व करता है और 0 पानी का प्रतिनिधित्व करता है, यदि पानी से घिरे 1 (भूमि) का समूह द्वीप कहलाता है। हमें एक ही निर्देशांक पर mat1 और mat2 दोनों में मौजूद द्वीपों की संख्या ज्ञात करनी है। तो, अगर इनपुट mat1 की तरह है

  1. पायथन में एस में अलग-अलग सबस्ट्रिंग की संख्या गिनने का कार्यक्रम

    मान लीजिए कि हमारे पास एक स्ट्रिंग s है, हमें s के अलग-अलग गैर-रिक्त सबस्ट्रिंग की संख्या ज्ञात करनी है। इसलिए, यदि इनपुट s =abaa जैसा है, तो आउटपुट 8 होगा, क्योंकि सबस्ट्रिंग [a, b, ab, ba, aa, aba, बा, आबा]। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - कोशिश करें:=एक नया नक्शा n :=आकार का

  1. पायथन में n नोड्स के साथ BST की संख्या गिनने का कार्यक्रम

    मान लीजिए कि हमारे पास अलग-अलग नोड हैं। सभी अलग हैं। हमें यह पता लगाना है कि हम उन्हें कितने तरीकों से व्यवस्थित कर सकते हैं ताकि हम बाइनरी सर्च ट्री बना सकें। जैसा कि हम बाइनरी सर्च ट्री के बारे में जानते हैं, लेफ्ट सबट्री में हमेशा छोटे मान होते हैं और राइट सबट्री में बड़े मान होते हैं। इसे हल कर