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

পাইথনে স্টার গ্রাফের সেন্টার বের করার প্রোগ্রাম


মনে করুন একটি অনডায়রিক্টেড স্টার গ্রাফ আছে যার n নোড ১ থেকে n পর্যন্ত লেবেল করা। আমরা জানি স্টার গ্রাফ হলো এমন একটি গ্রাফ যেখানে একটি সেন্টার নোড থাকে এবং ঠিক n-1টি এজ সেন্টার নোডকে অন্য সব নোডের সাথে সংযুক্ত করে। আমাদের দেওয়া স্টার গ্রাফের সেন্টার বের করতে হবে।

যেমন, ইনপুট এমন হলে

পাইথনে স্টার গ্রাফের সেন্টার বের করার প্রোগ্রাম

আউটপুট হবে ৩ কারণ ৩ সেন্টারে অবস্থিত।

সমাধান পদ্ধতি

এই সমস্যাটি সমাধান করতে নিচের ধাপগুলো অনুসরণ করুন:

  • seen := একটি নতুন সেট

  • graph-এ থাকা প্রতিটি এজ (u,v) এর জন্য

    • যদি u seen-এ থাকে, তবে

      • u রিটার্ন করুন

    • যদি v seen-এ থাকে, তবে

      • v রিটার্ন করুন

    • u কে seen-এ অ্যাড করুন

    • v কে seen-এ অ্যাড করুন

উদাহরণ

নিচের ইমপ্লিমেন্টেশনটি দেখুন আরও ভালো বোঝার জন্য:

def solve(graph): seen = set() for u,v in graph: if u in seen: return u if v in seen: return v seen.add(u) seen.add(v) graph = [(1,3),(2,3),(4,3),(5,3),(6,3)] print(solve(graph))

ইনপুট

[(1,3),(2,3),(4,3),(5,3),(6,3)] 

আউটপুট

3

  1. পাইথনে স্টার গ্রাফের সেন্টার বের করার প্রোগ্রাম

  2. পাইথনে গ্রাফ সবাই দ্বারা ট্রাভার্সেবল কিনা চেক করার প্রোগ্রাম

  3. পাইথনে সার্ভিস সেন্টারের সেরা পজিশন বের করার প্রোগ্রাম

  4. পাইথনে গ্রাফে ক্রিটিকাল ও সিউডো-ক্রিটিকাল এজ খুঁজে বের করার প্রোগ্রাম