केवल पॉजिटिव एज वजन के साथ एक निर्देशित, जुड़े ग्राफ को देखते हुए, एक फाइबोनैकी ढेर का उपयोग करते हुए डिजस्ट्रा की तुलना में दो शीर्षकों के बीच सबसे छोटा रास्ता खोजने के लिए तेज़ एल्गोरिदम हैं?क्या डिजस्ट्रा की तुलना में तेज़ एल्गोरिदम हैं?
विकिपीडिया कहता है कि डिजस्ट्रा ओ (| ई | + | वी | * लॉग (| वी |)) में है (एक फाइबोनैकी ढेर का उपयोग करके)।
मैं ऑप्टिमाइज़ेशन की तलाश नहीं कर रहा हूं, उदाहरण के लिए, निष्पादन समय का आधा, बल्कि अलग-अलग समय जटिलता (जैसे ओ (एन * लॉग एन) से ओ (एन) में जाने वाले एल्गोरिदम)।
इसके अलावा, मैं निम्नलिखित दृष्टिकोण पर आपकी राय जानना चाहते हैं:
- सब बढ़त वजन के GCD निर्धारित करें।
- ग्राफ को वर्दी एज वजन वाले ग्राफ में बदलें।
- दो दिए गए शीर्षकों के बीच सबसे छोटा रास्ता खोजने के लिए बीएफएस का उपयोग करें। बिंदु 2 के लिए
उदाहरण:
GCD कल्पना होने के लिए 1. तब मैं किनारे
एक ---> बी परिणत हो गया (धार वजन 3)
में A-> एक '-> ए' '-> बी (3 गुना बढ़त वजन 1)
यह परिवर्तन निरंतर समय खर्च करता है और प्रत्येक किनारे के लिए एक बार किया जाना होगा। तो मैं उम्मीद करता हूं कि यह एल्गोरिदम ओ (| ई |) (परिवर्तन) + ओ (| ई | + | वी |) (बीएफएस) = ओ (2 * | ई | + | वी |) = ओ (| ई | + | वी |)
मेरे प्रश्न को पढ़ने के लिए समय निकालने के लिए धन्यवाद और मुझे आशा है कि आपका समय ^^ कम नहीं होगा। आपका दिन शुभ हो।
मुझे लगता है कि आप जीसीडी की लागत को ध्यान में रखना भूल रहे हैं। –
परिवर्तन निरंतर समय में नहीं चलता है। आपको नए चरमों की एक चर संख्या बनाना होगा। –
जीसीडी उपयोग करने का सबसे अच्छा मूल्य होगा, लेकिन कोई हमेशा वापस आ सकता है और केवल 1 का उपयोग कर सकता है, ताकि चरण 1 के लिए कोई समय व्यतीत न हो। –