আমাকে একটি নির্দেশিত ওজনযুক্ত গ্রাফে নেতিবাচক চক্রটি সন্ধান করতে হবে। আমি জানি বেলম্যান ফোর্ড অ্যালগরিদম কীভাবে কাজ করে এবং এটি যদি আমাকে পৌঁছাতে পারে এমন নেতিবাচক চক্র আছে কিনা তা আমাকে বলে। তবে এটি স্পষ্টভাবে এর নাম দেয় না।
আমি চক্রের প্রকৃত পাথ কীভাবে পেতে পারি ?
স্ট্যান্ডার্ড অ্যালগরিদম প্রয়োগ করার পরে আমরা ইতিমধ্যে পুনরাবৃত্তি করেছি এবং এর পরে আর কোনও উন্নতি সম্ভব হবে না। যদি আমরা এখনও কোনও নোডের দূরত্ব কম করতে পারি তবে একটি নেতিবাচক চক্র বিদ্যমান।
আমার ধারণাটি হ'ল: যেহেতু আমরা প্রান্তটি জানি যা এখনও পথের উন্নতি করতে পারে এবং আমরা প্রতিটি নোডের পূর্বসূরিকে জানি, আমরা আবার তার সাথে দেখা না হওয়া পর্যন্ত আমরা সেই প্রান্ত থেকে আমাদের পথটি সন্ধান করতে পারি। এখন আমাদের আমাদের চক্র করা উচিত।
দুঃখের বিষয়, আমি এমন কোনও কাগজ পাইনি যা আমাকে জানায় যে এটি সঠিক কিনা। সুতরাং, এটি কি আসলে এর মতো কাজ করে?
সম্পাদনা করুন: এই উদাহরণটি প্রমাণ দেয় যে আমার ধারণাটি ভুল। নিম্নলিখিত গ্রাফ দেওয়া, আমরা নোড থেকে বেলম্যান-ফোর্ড চালাচ্ছি ।
আমরা অর্ডার প্রান্ত প্রক্রিয়া । পুনরাবৃত্তির পরে আমরা নোড দূরত্ব পাই :n - 1 1 : - 5 2 : - 30 3 : - 15
এবং পিতামাতার সারণী: এর পিতামাতা পিতামাতা পিতামাতা
3 2
এখন, করছেন ম পুনরাবৃত্তির আমরা দেখতে যে নোড দূরত্ব এখনও প্রান্ত ব্যবহার উন্নত করা যায় । সুতরাং আমরা জানি যে একটি নেতিবাচক চক্র বিদ্যমান এবং এটি এর অঙ্গ।
কিন্তু, পিতা বা মাতা টেবিল মাধ্যমে আমাদের উপায় ফিরে ট্রেসিং দ্বারা, আমরা অন্য নেতিবাচক চক্র আটকে যান এবং কখনও পূরণ আবার।
কীভাবে আমরা এই সমস্যার সমাধান করতে পারি?