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

पायथन का उपयोग करके सरणी सूची में 0 और 1 को पृथक करना

समस्या विवरण

लिस्ट कॉम्प्रिहेंशन पायथन में एक लोकप्रिय तकनीक है। यहां हम इस तकनीक का उपयोग करते हैं। हम एक यूजर इनपुट सरणी बनाते हैं और सरणी के तत्व यादृच्छिक क्रम में 0 और 1 होने चाहिए। फिर 0 को बाईं ओर और 1 को दाईं ओर पृथक करें। हम सरणी को पार करते हैं और दो अलग-अलग सूचियां अलग करते हैं, एक में 0 और दूसरी में 1, फिर दोनों सूचियों को जोड़ते हैं।

उदाहरण

इनपुट:: a=[0,1,1,0,0,1]
आउटपुट::[0,0,0,1,1,1]

एल्गोरिदम

  1. सबसे पहले सरणी को पार करें।
  2. फिर सरणी के प्रत्येक तत्व की जांच करें। यदि तत्व 0 है, तो उसकी स्थिति बाईं ओर है और यदि 1 है तो यह सरणी के दाईं ओर है।
  3. फिर दोनों सूचियों को जोड़ें।

उदाहरण कोड

# सरणी सूची में 0 और 1 को पृथक करें
def seg0s1s(A):
    n = ([i for i in A if i == 0] + [i for i in A if i == 1])
    print(n)

# ड्राइवर प्रोग्राम
if __name__ == "__main__":
    A = list()
    n = int(input("सरणी का आकार दर्ज करें ::"))
    print("संख्या दर्ज करें ::")
    for i in range(int(n)):
        k = int(input(""))
        A.append(int(k))
    print("नई सरणी सूची ::")
    seg0s1s(A)

आउटपुट

सरणी का आकार दर्ज करें ::6
संख्या दर्ज करें :: 1 0 0 1 1 0
नई सरणी सूची :: [0, 0, 0, 1, 1, 1]
  1. पायथन में सूची को स्टैक और क्यू के रूप में उपयोग करना पायथन में सूची को स्टैक और क्यू के रूप में उपयोग करना

    इस लेख में, हम पायथन 3.x (या पूर्व संस्करणों) में Stack और Queue संरचनाओं के बारे में सीखेंगे। यहाँ हम इन डेटा संरचनाओं के भीतर कार्य और संशोधन पर चर्चा करेंगे। इसमें शामिल हैं - सम्मिलन संक्रिया (Push, Enqueue) हटाने की संक्रिया (Pop, Dequeue) प्रदर्शन/ट्रैवर्सल संक्रिया पूर्वापेक्षाएँ: सूची औ

  1. - पायथन में accumulate फंक्शन का उपयोग करके प्रीफिक्स सम ऐरे

    एक ऐरे दिया गया है और हमें accumulate फंक्शन का उपयोग करके प्रीफिक्स सम ऐरे करना है। itertools.accumulate(iterable[, func]) मॉड्यूल फंक्शन्स सभी इटरेटर्स का निर्माण और वापसी करते हैं। इसलिए उन्हें केवल उन फंक्शन्स या लूप्स द्वारा एक्सेस किया जाना चाहिए जो स्ट्रीम को ट्रंकेट करते हैं। एक इटरेटर बनाएं

  1. - पायथन लिस्ट और ऐरे में क्या अंतर है?

    मूल रूप से, पायथन लिस्ट्स बहुत लचीली हैं और पूरी तरह से विषम, मनमाना डेटा धारण कर सकती हैं, और उन्हें एमोर्टाइज्ड कॉन्स्टेंट टाइम में बहुत कुशलता से जोड़ा जा सकता है। यदि आपको अपनी ऐरे को समय-कुशलता से और बिना परेशानी के सिकोड़ने और बढ़ाने की आवश्यकता है, तो वे जाने का रास्ता हैं। लेकिन वे C ऐरे क