इस BFS एल्गोरिथ्म pseudocode में pi का क्या अर्थ है?


9

मेरे पास चौड़ाई-प्रथम खोज एल्गोरिथ्म के लिए निम्नलिखित छद्मकोश हैं

BFS(G,s)
 1 for each vertex uV(G) \ {s}
 2     color[u] = white
 3     d[u] = ∞
 4     π[u] = nil
 5 color[s] = gray
 6 d[s] = 0
 7 π[s] = nil
 8 Q = ∅
 9 Enqueue(Q,s)
10 while q ≠ ∅
11     u = Dequeue(Q)
12     for each vAdj[u]
13         if color[v] == white
14             color[v] = gray
15             d[v] = d[u] + 1
16             π[v] = u
17             Enqueue(Q,v)
18     color[u] = black

मूल छवि

मुझे समझ में नहीं आ रहा है कि इस संदर्भ में पत्र the क्या दर्शाता है। मैं इस एल्गोरिथ्म से परिचित नहीं हूं और इसका अनुमान लगाना कठिन है।

मुझे लगता dहै कि दूरी को इंगित करता colorहै, बेशक रंग है, लेकिन यह π... यह किसी प्रकार का एक चर प्रतीत होता है, लेकिन मैं इस छद्मकोड में इसके कार्य को नहीं समझता हूं।


2
@Snowman मैं विशेष रूप से गणित के बजाय कंप्यूटर विज्ञान और अकादमिक प्रकाशनों में प्रयुक्त शैली के साथ जाना चाहता हूं , लेकिन मैं सामान्य विचार से सहमत हूं। यह प्रश्न इस उपयोग के बारे में पूछ रहा है जिसका उत्तर शायद विकिपीडिया पृष्ठ को पढ़कर दिया गया है , और not सामान्य उपयोग में कुछ नहीं है, बल्कि यह भी विशिष्ट है कि लेखक एल्गोरिदम कैसे लिखता है। मुझे चिंता है कि स्यूडोकोड पर बहुत अधिक विविधताएं हैं और यह पूछना कि प्रत्येक शैली में प्रत्येक वर्ण का मतलब क्या है हाथ से निकल सकता है।

1
क्या अक्सर छद्मकोड में पत्र का उपयोग किया जाता है? कभी-कभी, लेकिन संदर्भ के आधार पर अर्थ अलग-अलग होगा।
रफ़लविंड

1
@Snowman: is यहाँ एक फ़ंक्शन नहीं है। यह वर्टिकल द्वारा बनाए गए वर्टिकल का एक उत्परिवर्तित व्यूह है।
रफ़लविंड

1
इस संदर्भ में this एल्गोरिथ्म में घ और रंग के समान एक प्रतीक है। कभी-कभी एल्गोरिथ्म लेखक "पैरेंटविर्टिस" या कुछ और जैसे कि एक प्रोग्रामिंग भाषा में उपयोग किए जाने वाले प्यारा नामों के बजाय एकल अक्षर प्रतीकों का उपयोग करना पसंद करते हैं।
ब्रैंडिन

@Snowman क्या आप मजाक कर रहे हैं? यह गणित का सवाल नहीं है। यह एक प्रोग्राम लिखने के लिए एक छद्मकोश की व्याख्या करने के बारे में है, यह सॉफ्टवेयर विकास के बारे में क्यों नहीं होना चाहिए, मैं वास्तव में समझ नहीं सकता।
नबर

जवाबों:


17

मेरा मानना ​​है कि यहां π का ​​उपयोग वास्तविक "जनक" है। तो इस मामले में, v   का "मूल" यू है क्योंकि हम यू से सटे सभी नोड्स को देख रहे हैं


0

Came वेक्टर निश्चित रूप से नोड यू रखता है जिसके साथ आप नोड v में आए थे। यह तब मदद करता है जब आपको ग्राफ के BFS ट्री का निर्माण करना होता है। हालांकि यह आवश्यक नहीं है, यह तकनीक बहुत अधिक जटिलता को कम करती है जब आपको बीएफएस ( एक ग्राफ में दो नोड्स के बीच अधिकतम प्रवाह की गणना के लिए एडमंड्स-कार्प एल्गोरिदम) से अधिक समय प्रदर्शन करना पड़ता है । इस मामले में आपको बीएफएस को अधिक बार चलाने की आवश्यकता नहीं है क्योंकि आपके पास पहले से निर्मित बीएफएस पेड़ है और इसे पत्तियों से जड़ तक फैलाया गया है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.