এই বিএফএস অ্যালগরিদম সিউডোকোডে পাই বলতে কী বোঝায়?


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

আসল চিত্র

এই প্রসঙ্গে চিঠিটি কী নির্দেশ করে তা আমি বুঝতে পারি না। আমি এই অ্যালগরিদমের সাথে পরিচিত নই এবং এটি অনুমান করা খুব কঠিন।

আমি মনে করি dদূরত্বটি নির্দেশ করে, colorঅবশ্যই এটি রঙ, তবে এটি π... এটি কোনও ধরণের পরিবর্তনশীল হিসাবে উপস্থিত বলে মনে হয় তবে আমি এই সিডোকোডে এর কার্যকারিতাটি বুঝতে পারি না।


2
@ স্নোমান আমি কম্পিউটার বিজ্ঞান এবং একাডেমিক প্রকাশনাগুলিতে গণিতের চেয়ে বিশেষত ব্যবহৃত স্টাইলটি সহ যাব , তবে আমি সাধারণ ধারণার সাথে একমত নই। এই ব্যবহার সম্পর্কে এই প্রশ্নটি জিজ্ঞাসা করছে উইকিপিডিয়া পৃষ্ঠাটি পড়ে উত্তর দেওয়া হতে পারে এবং common সাধারণ ব্যবহারে কিছু নয় বরং লেখক কীভাবে আলগোরিদিম লেখেন তা সুনির্দিষ্ট। আমি উদ্বেগ প্রকাশ করছি যে সিউডোকোডে অনেকগুলি ভিন্নতা রয়েছে এবং প্রতিটি শৈলীর প্রতিটি চরিত্রের অর্থ কীভাবে হাতছাড়া হতে পারে তা সম্পর্কে জিজ্ঞাসা করছেন।

1
চিঠিটি প্রায়শই সিউডোকোডে ব্যবহৃত হয়? কখনও কখনও, তবে প্রসঙ্গের উপর নির্ভর করে অর্থটি পৃথক হবে।
রাফলেউইন্ড

1
@ স্নোমান: π এখানে কোনও ফাংশন নেই। এটি শীর্ষে সূচি অনুসারে উল্লম্ব কোণগুলির একটি পরিবর্তনীয় অ্যারে।
রাফলউইন্ড

1
এই প্রসঙ্গে d হ'ল ডি এবং রঙের মতো অ্যালগরিদমে ব্যবহৃত একটি প্রতীক মাত্র। কখনও কখনও অ্যালগরিদম লেখকরা "প্যারেন্টভেরটিসস" বা প্রোগ্রামিং ভাষায় ব্যবহৃত হতে পারে এমন কিউট নামের পরিবর্তে একক বর্ণের প্রতীক ব্যবহার করতে পছন্দ করেন।
ব্র্যান্ডিন

@ স্নোমান আপনি কি মজা করছেন? এটি গণিতের প্রশ্ন নয়। এটি একটি প্রোগ্রাম লিখতে একটি সিউডোকোডের ব্যাখ্যা সম্পর্কে, এটি কেন সফ্টওয়্যার বিকাশের বিষয়ে হওয়া উচিত নয়, আমি সত্যই বুঝতে পারি না।
nbro

উত্তর:


17

আমি বিশ্বাস করি π এখানে ব্যবহার প্রকৃত "পিতামাতার"। তাই এই ক্ষেত্রে, এর "পিতা বা মাতা" বনাম   হয় তোমার দর্শন লগ করা কারণ আমরা সংলগ্ন সব নোড এ বেরাচ্ছেন তোমার দর্শন লগ করা


0

Π ভেক্টরটি অবশ্যই নোডকে আপনার সাথে রাখে যা আপনি নোড ভিতে এসেছিলেন This এটি আপনাকে গ্রাফের বিএফএস ট্রি তৈরি করতে হলে সহায়তা করে। যদিও এটি প্রয়োজনীয় নয়, আপনি যখন আরও বেশি সময় বিএফএস ব্যবহার করতে হয় তখন এই কৌশলটি অনেক জটিলতা হ্রাস করে (যেমন, গ্রাফের দুটি নোডের মধ্যে সর্বাধিক প্রবাহ গণনার জন্য অ্যাডমন্ডস – কার্প অ্যালগরিদম )। আপনি ইতিমধ্যে বিএফএস গাছটি তৈরি করে ফেলেছেন এবং পাতা থেকে মূলের দিকে যেতে পারেন সে ক্ষেত্রে আপনাকে আরও বার বার বিএফএস চালাতে হবে না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.