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

यह जांचने के लिए कार्यक्रम कि क्या कोई ऐसा शब्द है जो पायथन में लगभग समान है

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

इसलिए, यदि इनपुट शब्द =["बीज", "पिक", "लिक", "रूट", "लाइव"] जैसा है, तो आउटपुट ट्रू होगा, क्योंकि "पिक" और "लिक" लगभग समान हैं।

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

  • s :=एक नया सेट
  • शब्दों में प्रत्येक शब्द के लिए, करें
    • शब्द में प्रत्येक अनुक्रमणिका i और शब्द w के लिए, करें
      • यदि शब्द का स्थानापन्न [सूचकांक 0 से i - 1] संयोजन "*" शब्द [सूचकांक i + 1 से अंत तक] संयोजन s में मौजूद है, तो
        • सही लौटें
      • अन्यथा,
        • सम्मिलित करें (शब्द [सूचकांक 0 से i-1 तक] "*" शब्द को संयोजित करें [सूचकांक i + 1 से अंत तक]) को s में जोड़ें
  • झूठी वापसी

उदाहरण

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

def solve(words):
   s = set()
   for word in words:
      for i, w in enumerate(word):
         if word[:i] + "*" + word[i + 1 :] in s:
            return True
         else:
            s.add(word[:i] + "*" + word[i + 1 :])

   return False

words = ["seed", "pick", "lick", "root", "live"]
print(solve(words))

इनपुट

["seed", "pick", "lick", "root", "live"]

आउटपुट

True

  1. C# प्रोग्राम यह जांचने के लिए कि दो क्रम समान हैं या नहीं

    SequenceEqual पद्धति का उपयोग समानता के लिए संग्रहों का परीक्षण करने के लिए किया जाता है। क्रम सेट करें - string[] arr1 = { "This", "is", "it" }; string[] arr2 = { "My", "work", "report" }; string[] arr3 = { "This", "is"

  1. यह जांचने के लिए कार्यक्रम कि ग्राफ़ में कोई सामान्य पहुंच योग्य नोड है या नहीं, पायथन में नहीं है

    मान लीजिए कि हमारे पास एक निर्देशित ग्राफ की एक बढ़त सूची है, n नोड्स हैं और नोड नाम 0 से n-1 हैं। हमारे पास दो पूर्णांक मान a और b भी हैं। हमें यह जांचना होगा कि क्या कोई नोड c ऐसा है कि हम c से a और c से b तक भी जा सकते हैं। तो, अगर इनपुट पसंद है और a =2, b =3, तो आउटपुट ट्रू होगा, क्योंकि यहा

  1. पायथन में पत्तियों का क्रम दो पत्तियों के समान है या नहीं, यह जांचने के लिए कार्यक्रम

    मान लीजिए हमारे पास दो बाइनरी ट्री हैं; हमें यह जांचना होगा कि दोनों पेड़ों में बाएं से दाएं पत्तों का क्रम समान है या नहीं। तो, अगर इनपुट पसंद है तब आउटपुट सही होगा क्योंकि दोनों पेड़ों के लिए अनुक्रम [2, 6] है। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे: c :=एक नई सूची एक फ़ंक्शन को परिभ