इस लेख में, हम अगले सबसे बड़े तत्व की भविष्यवाणी करने के लिए परिभाषित और उपयोगकर्ता-परिभाषित कार्यों के बारे में जानेंगे।
समस्या कथन
हमें एक सरणी दी गई है और हमें सरणी में मौजूद प्रत्येक तत्व के लिए अगला ग्रेटर तत्व मुद्रित करने की आवश्यकता है। एक मनमाना तत्व y के लिए अगला बड़ा तत्व सरणी में x के दाईं ओर मौजूद पहला सबसे बड़ा तत्व है। जिन तत्वों के लिए कोई सबसे बड़ा तत्व मौजूद नहीं है, वे -1 को आउटपुट के रूप में लौटाते हैं।4
इनपुट टेस्ट केस
[12,1,2,3]
आउटपुट
12 -> -1 1 -> 3 2 -> 3 3 -> -1
अब आइए सोर्स कोड देखें।
उदाहरण
# Function
Def elevalue(arr):
# Iteration
for i in range(0, len(arr)):
# slicing max
final = max(arr[i:])
# greatest check
if (arr[i] == final):
print("% d -> % d" % (arr[i], -1))
else:
print("% d -> % d" % (arr[i], final))
# Driver program
def main():
arr = [12,1,2,3]
elevalue(arr)
arr = [1,34,2,1]
elevalue(arr)
if __name__ == '__main__':
main() आउटपुट
12 -> -1 1 -> 3 2 -> 3 3 -> -1 1 -> 34 34 -> -1 2 -> -1 1 -> -1
निष्कर्ष
इस लेख में, हमने उपयोगकर्ता-परिभाषित फ़ंक्शन का उपयोग करके अगले बड़े तत्वों के लिए दिलचस्प पायथन कार्यान्वयन के बारे में सीखा।