কম্পিউটার টিউটোরিয়াল

পাইথনে Next Greater Elements বের করার আকর্ষণীয় বাস্তবায়ন


এই নিবন্ধে আমরা নেক্সট গ্রেটার এলিমেন্ট প্রেডিক্ট করার জন্য ইউজার-ডিফাইনড ফাংশন ডিফাইন করার পদ্ধতি শিখব।

সমস্যা বিবরণ

আমাদের একটি অ্যারে দেওয়া আছে এবং আমাদের অ্যারেতে উপস্থিত প্রতিটি এলিমেন্টের জন্য Next Greater Element প্রিন্ট করতে হবে। একটি এলিমেন্ট x-এর জন্য Next Greater Element হলো অ্যারেতে x-এর ডান পাশে উপস্থিত প্রথম গ্রেটার এলিমেন্ট। যেসব এলিমেন্টের জন্য কোনো গ্রেটার এলিমেন্ট নেই, তাদের জন্য -1 আউটপুট হিসেবে রিটার্ন করুন।

ইনপুট টেস্ট কেস

[12, 1, 2, 3]

আউটপুট

12 -> -1
1 -> 3
2 -> 3
3 -> -1

এখন সোর্স কোডটি পর্যবেক্ষণ করুন।

উদাহরণ

# ফাংশন ডেফিনিশন
def elevalue(arr):
    # ইটারেশন
    for i in range(0, len(arr)):
        # স্লাইসিং{max}
        final = max(arr[i:])
        # গ্রেটেস্ট চেক
        if (arr[i] == final):
            print("%d -> %d" % (arr[i], -1))
        else:
            print("%d -> %d" % (arr[i], final))

# ড্রাইভার প্রোগ্রাম
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

উপসংহার

এই নিবন্ধে আমরা ইউজার-ডিফাইনড ফাংশন ব্যবহার করে Next Greater Elements বের করার আকর্ষণীয় পাইথন বাস্তবায়ন শিখেছি।

  1. জাভাস্ক্রিপ্টে লিংকড লিস্টে প্রতিটি নোডের জন্য পরবর্তী বড় মান খুঁজে বের করা

  2. কুইকসর্টের পাইথন প্রোগ্রাম

  3. পাইথন প্রোগ্রাম: বাবল সোর্ট অ্যালগরিদম

  4. পাইথনের অভ্যন্তরীণ কাজকর্ম