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

पायथन में दी गई सूची के सभी तत्वों को सॉर्ट करके एक स्ट्रिंग में मर्ज करने का प्रोग्राम

मान लीजिए हमें धनात्मक पूर्णांकों की एक सूची दी गई है। हमें सूची को अवरोही क्रम में सॉर्ट करना है और फिर उसमें सभी तत्वों को जोड़कर एक स्ट्रिंग बनाना है। हम जोड़ी गई स्ट्रिंग वापस करते हैं।

इसलिए, यदि इनपुट है input = [415, 78, 954, 123, 5], तो आउटपुट होगा 954785415123।

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

  • cmp() फ़ंक्शन परिभाषित करें। यह l, r लेगा:
    • यदि (str(l) + str(r)) का पूर्णांक मान (str(r) + str(l))1 लौटाएं
    • अन्यथा, -1 लौटाएं
  • input सूची को compare फ़ंक्शन के अनुसार सॉर्ट करें
  • input में सभी तत्वों को एक स्ट्रिंग में जोड़ें और वापस करें

उदाहरण

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

from functools import cmp_to_key
def cmp(l, r):
    if int(str(l) + str(r)) > int(str(r) + str(l)):
        return 1
    else:
        return -1
def solve(input):
    input.sort(key=cmp_to_key(cmp), reverse=True)
    return "".join(map(str, input))
print(solve([415, 78, 954, 123, 5]))

इनपुट

[415, 78, 954, 123, 5]

आउटपुट

954785415123
  1. पायथन प्रोग्राम: दी गई स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करें पायथन प्रोग्राम: दी गई स्ट्रिंग के सभी क्रमपरिवर्तन प्रिंट करें

    इस लेख में हम दी गई समस्या के समाधान के बारे में जानेंगे। समस्या कथन हमें एक स्ट्रिंग दी गई है, हमें स्ट्रिंग के सभी संभावित क्रमपरिवर्तन प्रदर्शित करने हैं। उदाहरण # रूपांतरण def toString(List): return .join(List) # क्रमपरिवर्तन def permute(a, l, r): if l == r: print(toString(a))

  1. - सम और विषम तत्वों को दो अलग-अलग सूचियों में विभाजित करने का पायथन प्रोग्राम

    समस्या विवरण इस प्रोग्राम में हम एक यूजर इनपुट सूची बनाते हैं और तत्व सम और विषम का मिश्रण होते हैं। हमारा कार्य इन सूची को दो सूचियों में विभाजित करना है। एक में विषम संख्या के तत्व और दूसरी में सम संख्या के तत्व। उदाहरण इनपुट: [1, 2, 3, 4, 5, 9, 8, 6] आउटपुट सम सूची: [2, 4, 8, 6] विषम सूची: [1, 3

  1. - वर्णों की सूची को स्ट्रिंग में बदलने का पायथन प्रोग्राम

    समस्या विवरण पायथन को इस तरह के रूपांतरण की बहुत आवश्यकता होती है। उदाहरण के लिए, ऐसे रूपांतरण सीरियलाइज़ेशन उद्देश्यों के लिए उपयोगी होते हैं। ऐसे रूपांतरण का एक उदाहरण होगा: [h, e, l, l, o, , w, o, r, l, d] से hello world पायथन में एक join मेथड होता है जिसका उपयोग ऐसे रूपांतरण के लिए किया जा सकत