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

পাইথনে দুটি লিস্ট থেকে ন্যূনতম পার্থক্য খুঁজে বের করার প্রোগ্রাম


মান ল করুন L1 এবং L2 নামে দুটি লিস্ট, আমাদের L1-এর একটি সংখ্যা এবং L2-এর একটি সংখ্যার মধ্যকার ন্যূনতম পার্থক্য খুঁজে বের করতে হবে।

যদি ইনপুট হয় L1 = [2, 7, 4], L2 = [16, 10, 11], তবে আউটপুট হবে ৩, কারণ ন্যূনতম পার্থক্য 10 - 7 = 3।

এটি সমাধান করতে আমরা নিম্নলিখিত ধাপগুলি অনুসরণ করব:

  • L1 এবং L2 তালিকাগুলো সাজান
  • ans := infinity
  • i := 0, j := 0
  • যখন i < L1-এর আকার এবং j < L2-এর আকার:
    • ans := min(ans, |L1[i] - L2[j]|)
    • যদি L1[i] < L2[j], i := i + 1
    • অন্যথায়, j := j + 1
  • ans ফেরত দিন

বेहतर বোঝার জন্য নিচের ইমপ্লিমেন্টেশনটি দেখুন:

উদাহরণ

class Solution:    def solve(self, L1, L2):       L1.sort()       L2.sort()       ans = float("inf")       i = j = 0       while i < len(L1) and j < len(L2):          ans = min(ans, abs(L1[i] - L2[j]))          if L1[i] < L2[j]:             i += 1          else:             j += 1       return ans ob = Solution() L1 = [2, 7, 4] L2 = [16, 10, 11] print(ob.solve(L1, L2))

ইনপুট

[2, 7, 4], [16, 10, 11]

আউটপুট

3

  1. দুই স্ট্রিং থেকে অনকমন ওয়ার্ড বের করার পাইথন প্রোগ্রাম

  2. পাইথনে লিস্ট থেকে N বড় এলিমেন্ট বের করা

  3. পাইথনে দুটি লিস্টের ইন্টারসেকশন (Intersection) বের করা

  4. পাইথনে দুটি লিস্টের পার্থক্য (Difference) বের করার প্রোগ্রাম