algorithm - adjacency matrix of weighted directed graph -
ए) मान लीजिए ए
भारित निर्देशित ग्राफ का एक निकटता मैट्रिक्स जी
मैट्रिक्स n
शीट के साथ जिसमें ए [i, j]
बढ़त का एक भार हो i
से j
के साथ। अगर ऐसा कोई बढ़त नहीं है i [i, i] = 0 ए ^ के = ए * ए * ए * ... ए । यदि हम * के बजाय * का उपयोग करते हैं और <कोड> मिनट
के बजाय +, स्लॉट <कोड> ए ^ के [i, j] का उपयोग करते हैं, तो पथ के वजन का वर्णन नहीं करता i
अधिकतम k
किनारे पर j
से मैं इस समस्या को दिखाना चाहता हूँ क्या चीजें? ए भारित निर्देशित ग्राफ (wihout लूप और एकाधिक बढ़त) का एक निकटता मैट्रिक्स मान लीजिए
जी के साथ
, और evrey n
शीर्ष पर, जिसमें ए [i, j]
बढ़त का एक भार है i
से j
अगर ऐसा कोई बढ़त नहीं है i [i, j] = अनंत i
के लिए हमारे पास ए [i, i] = 0
। मैट्रिक्स ए ^ के = ए * ए * ए * ... ए । स्लॉट
ए ^ के [i, j]
क्या चीज़ें दिखाएं? न्यूनतम वजन? या ...?
कोई भी विचार?
संपादित करें: मेरा मतलब है ये एल्गोरिथ्म ग्राफ़ में है? अधिकतम वजन मिल जाए? न्यूनतम वजन? एक मैट्रिक्स को देखते हुए प्रारंभ में क्या होगा अगर हम यह स्वयं छोरों की अनुमति देता है उपरोक्त कोड में जब इसका मतलब यह है कि अब अब अब इसी तरह, हम बी = ए ^ के
बी [i, j]
कम से कम पथ को i .. j
से दर्शाता है, जो बिल्कुल k
चरण लेता है ए क्या होता है यदि हम एकाधिक
ए
स्वयं के साथ?
मैट्रिक्स परिणाम जो ए * ए वेक्टर और एलटी द्वारा प्राप्त मैट्रिक्स होगा; एन, वेक्टर & lt; int & gt; (एन, आईएनएफ) & gt; परिणाम; आरपी (आई, 0, एन) आरईपी (जे, 0, एन) आरपी (के, 0, एन) परिणाम [i] [जे] = मिनट (परिणाम [आई] [जे], (ए [आई] [के] + ए [के] [जे]));
ए [i, j]
के पास j
से i
पर जाने की प्रत्यक्ष लागत थी जैसा कि आप देख सकते हैं कि परिणाम [i, j]
है न्यूनतम
का परिणाम [i, j]
और a [i, k ] + ए [के, जे] , इसलिए हम यह निष्कर्ष निकालते हैं कि
। और जब से हम इसे सभी परिणाम [i, j]
में एक मध्यवर्ती शीर्ष का उपयोग करके i .. j
कोड> कश्मीर के के
, परिणाम [i, j]
के लिए पुनरावृत्त करते हैं, उसमें न्यूनतम लागत पथ होता है जो बिल्कुल दो किनारों पर जाता है अब हम A ^ k
के लिए सामान्यीकरण कर सकते हैं। A [i, i]
से 0
सेट करते हैं? k == i
,
परिणाम [i, j] = मिनट (परिणाम [i, j], a [i, i] + एक [i, j]) परिणाम [i, j] = मिनट (परिणाम [i, j], a [i, j]] // जब से [i, i] = 0;
परिणाम [i, j]
से i .. j
तक पहुंचने के लिए सबसे छोटा रास्ता दर्शाया जाएगा यदि हम कर सकते हैं या तो एक या दो किनारों का उपयोग करें। B [i, j]
से कम से कम पथ का प्रतिनिधित्व करेगा i .. j
जो लगभग K
कदम। i .. j
से पथ की कोई भी गणना करने के लिए उसी अवधारणा का उपयोग कर सकते हैं, जो बिल्कुल k
कदम अगर आप हमारे पास i
और j
के बीच का किनारा है, तो आप ऐसा कर सकते हैं कि A [i, j]
के रूप में 1
कोड> और 0
। ए ^ के
आपको इच्छित परिणाम देगा।
Comments
Post a Comment