گراف ٹراورسال کے طریقوں نے ہمیشہ مجھے بہت متوجہ کیا۔ موثر ہم مرتبہ سے پیئر مواصلات انجام دینے سے لے کر GPS کے استعمال کرکے قریب ترین ریستوراں اور کیفے ڈھونڈنے کے ل tra ، ٹروراسل طریقوں میں حقیقی دنیا کے منظر نامے میں مختلف قسم کے اطلاق ہوتے ہیں۔ بریڈتھ فرسٹ سرچ الگورتھم کے اس بلاگ میں ، ہم گراف ٹراورسال طریقوں کے پیچھے منطق پر گفتگو کریں گے اور بریڈتھ فرسٹ سرچ الگورتھم کے کام کو سمجھنے کے لئے مثالوں کا استعمال کریں گے۔
مصنوعی ذہانت اور مشین لرننگ کی گہرائی سے معلومات حاصل کرنے کے ل you ، آپ براہ راست داخلہ لے سکتے ہیں بذریعہ ایڈوریکا 24/7 معاونت اور زندگی بھر رسائی۔
یہاں عنوانات کی فہرست ہے جو ہوں گے اس بلاگ میں شامل:
- گراف ٹراورسال کا تعارف
- بریڈتھ فرسٹ سرچ کیا ہے؟
- ایک مثال کے ساتھ بریڈتھ فرسٹ سرچ الگورتھم کو سمجھنا
- چوڑائی پہلی تلاش الگورتھم سیڈوکوڈ
- چوڑائی پہلی تلاش کی درخواستیں
گراف ٹراورسال کا تعارف
پروسیسنگ کے لئے گراف دیکھنے اور تلاش کرنے کے عمل کو گراف ٹراورسال کہتے ہیں۔ زیادہ واضح بات کرنے کے لئے ، یہ ایک گراف میں ہر ایک کو ملاحظہ کرنے اور اس کے دریافت کرنے کے بارے میں ہے جیسے تمام افواہوں کو ایک بار ٹھیک سے تلاش کیا جاتا ہے۔
یہ آسان ہے! لیکن ایک کیچ ہے۔
بہت سے گراف ٹراورسال تکنیک ہیں جیسے بریڈتھ فرسٹ سرچ ، گہرائی پہلی تلاش اور اسی طرح کی۔ چیلنج ایک گراف کو استعمال کرنا ہے traversal تکنیک جو کسی خاص مسئلے کو حل کرنے کے لئے سب سے موزوں ہے۔ اس سے ہمیں بریڈتھ فرسٹ سرچ تکنیک لایا گیا ہے۔
بریڈتھ فرسٹ سرچ الگورتھم کیا ہے؟
بریڈتھ فرسٹ سرچ الگورتھم ایک گراف ٹراورسنگ ٹیکنیک ہے ، جہاں آپ بے ترتیب ابتدائی نوڈ (سورس یا روٹ نوڈ) منتخب کرتے ہیں اور گراف پرت کو اس طرح سے گذرنا شروع کرتے ہیں کہ تمام نوڈس اور ان کے متعلقہ نوڈس کو ملاحظہ کیا جاتا ہے۔
اس سے پہلے کہ ہم آگے بڑھیں اور بریڈتھ فرسٹ تلاش کو مثال کے ساتھ سمجھیں ، آئیے گراف ٹراورسال سے متعلق دو اہم اصطلاحات سے واقف ہوں:
جاوت میں ریاضی ڈاٹ کام کیا کرتے ہیں؟
- نوڈ کا دورہ کرنا: جیسا کہ نام سے پتہ چلتا ہے ، نوڈ کا دورہ کرنے کا مطلب نوڈ ملاحظہ کرنا یا منتخب کرنا ہے۔
- نوڈ کی کھوج: ایکسپلور منتخب نوڈ کے ملحقہ نوڈس (چائلڈ نوڈس)۔
اس کو بہتر طور پر سمجھنے کے لئے مذکورہ اعداد و شمار کو دیکھیں۔
ایک مثال کے ساتھ چوتھا پہلا سرچ الگورتھم کو سمجھنا
بریڈتھ فرسٹ سرچ الگورتھم کسی مسئلے کو حل کرنے کے ل level آسان ، سطح پر مبنی نقطہ نظر کی پیروی کرتا ہے۔ ذیل میں بائنری ٹری (جس کا گراف ہے) پر غور کریں۔ ہمارا مقصد بریڈتھ فرسٹ سرچ الگورتھم کا استعمال کرکے گراف کو عبور کرنا ہے۔
ہمارے شروع کرنے سے پہلے ، آپ کو بریڈتھ فرسٹ سرچ الگورتھم میں شامل مرکزی ڈیٹا ڈھانچے سے واقف ہونا چاہئے۔
قطار ایک خلاصہ اعداد و شمار کا ڈھانچہ ہے جو پہلے فرسٹ آؤٹ طریقہ کار کی پیروی کرتا ہے (پہلے داخل کردہ ڈیٹا تک پہلا رسائی حاصل کی جائے گی)۔ یہ دونوں سروں پر کھلا ہوا ہے ، جہاں ایک سرے کو ہمیشہ اعداد و شمار ڈالنے کے لئے استعمال کیا جاتا ہے۔
آئیے اب بریڈتھ فرسٹ سرچ کا استعمال کرکے گراف کو گھمانے میں ملوث اقدامات پر ایک نظر ڈالیں:
مرحلہ نمبر 1: خالی قطار لیں۔
مرحلہ 2: ایک ابتدائی نوڈ (کسی نوڈ کا دورہ کرنا) منتخب کریں اور اسے قطار میں داخل کریں۔
مرحلہ 3: بشرطیکہ قطار خالی نہ ہو ، قطار سے نوڈ نکالیں اور اس کے بچوں کے نوڈس (ایک نوڈ کی تلاش میں) قطار میں داخل کریں۔
مرحلہ 4: نکالا نوڈ پرنٹ کریں۔
پریشان نہ ہوں اگر آپ الجھ گئے ہیں تو ہم اسے ایک مثال کے ساتھ سمجھیں گے۔
نیچے دیئے گراف پر ایک نظر ڈالیں ، ہم گراف سے گزرنے کے لئے بریڈتھ فرسٹ سرچ الگورتھم کا استعمال کریں گے۔
جاوا میں بنیادی اعداد و شمار کے ڈھانچے
ہمارے معاملے میں ، ہم نوڈ ‘a’ کو روٹ نوڈ کے بطور تفویض کریں گے اور نیچے کی طرف جانا شروع کریں گے اور مذکورہ بالا مراحل کی پیروی کریں گے۔
مذکورہ بالا تصویر میں بریڈتھ فرسٹ سرچ الگورتھم کے اختتام سے آخر تک کے عمل کو دکھایا گیا ہے۔ مجھے اس کی مزید گہرائی سے وضاحت کرتے ہیں۔
- جڑ نوڈ کے بطور ‘a’ تفویض کریں اور اسے قطار میں داخل کریں۔
- قطار سے نوڈ ‘اے’ نکالیں اور بچے بچے کے نوڈس ‘a’ ، یعنی ، ‘بی’ اور ‘سی’ داخل کریں۔
- پرنٹ نوڈ ‘اے’۔
- قطار خالی نہیں ہے اور اس میں نوڈ ‘بی’ اور ‘سی’ ہے۔ چونکہ ‘بی’ قطار کا پہلا نوڈ ہے لہذا آئیے اسے نکالیں اور چلڈرن نوڈس ‘بی’ ، یعنی نوڈ ‘ڈی’ اور ‘ای’ داخل کریں۔
- قطار خالی ہونے تک ان اقدامات کو دہرائیں۔ نوٹ کریں کہ جو نوڈس پہلے ہی تشریف لائے گئے ہیں انہیں قطار میں شامل نہیں کیا جانا چاہئے ایک بار پھر
آئیے اب بریڈتھ فرسٹ سرچ الگورتھم کے سیڈو کوڈ کو دیکھیں۔
چوڑائی پہلی تلاش الگورتھم سیڈوکوڈ
بریڈتھ فرسٹ سرچ الگورتھم کو نافذ کرنے کے لئے یہ سیڈوکوڈ ہے۔
ازگر میں ایک نمبر کو کیسے تبدیل کریں
ان پٹ: s بطور ماخذ نوڈ BFS (G، s) Q کو قطار میں رہنے دیں۔ Q.enqueue (s) نشان s جیسا کہ ملاحظہ کیا گیا ہے (Q خالی نہیں ہے) v = Q.dequeue () اگر W کے تمام پڑوسیوں کے لئے گراف جی میں Q.enqueue (w) کے نشان W کا دورہ نہیں کیا گیا ہے
مذکورہ کوڈ میں ، درج ذیل اقدامات پر عمل درآمد کیا گیا ہے:
- (G، s) ان پٹ ہے ، یہاں G گراف ہے اور s روٹ نوڈ ہے
- ماخذ نوڈ ‘s’ کے ساتھ ایک قطار ‘Q’ بنائی اور ابتدا کی ہے
- بچوں کے تمام نوڈس ’s‘ کے نشان زد ہیں
- قطار سے ‘s’ نکالیں اور چلڈرن نوڈس دیکھیں
- v کے تمام بچوں کے نوڈس پر کارروائی کریں
- اپنے بچوں کے نوڈس کو مزید دیکھنے کے لئے ڈبلیو (چائلڈ نوڈس) اسٹور کریں
- جب تک ’’ ق ‘‘ نہیں ہوتا جاری رکھیں خالی
اس سے پہلے کہ ہم بلاگ کو سمیٹ لیں ، آئیے برڈتھ فرسٹ سرچ الگورتھم کی کچھ ایپلی کیشنز کو دیکھیں۔
چوڑائی پہلے کی تلاش کے الگورتھم کی درخواستیں
بریڈ فرسٹ سرچ ایک سادہ گراف ٹراورسال طریقہ ہے جس میں اطلاق کی حیرت انگیز حد ہوتی ہے۔ یہاں کچھ دلچسپ طریقے ہیں جن میں بریڈ فرسٹ سرچ استعمال کی جارہی ہے۔
سرچ انجنوں میں کرالر: ویب صفحوں کو انڈیکس کرنے کے لئے استعمال شدہ اہم الگورتھم میں سے ایک ہی بریڈتھ فرسٹ سرچ ہے۔ الگورتھم ماخذ کے صفحے سے ہٹنا شروع ہوتا ہے اور اس صفحے سے وابستہ تمام لنکس کی پیروی کرتا ہے۔ یہاں ہر ویب صفحے کو گراف میں نوڈ سمجھا جائے گا۔
GPS نیوی گیشن سسٹم: بریڈتھ فرسٹ سرچ ایک بہترین یلگوردم ہے جس میں جی پی ایس سسٹم کا استعمال کرکے پڑوسی مقامات کو تلاش کیا جاتا ہے۔
غیر ہلکے گراف کے ل the مختصر ترین راہ اور کم سے کم پھیلاؤ والے درخت تلاش کریں: جب بات بغیر کسی لائف گراف کی ہو تو ، مختصر ترین راستے کا حساب لگانا بالکل آسان ہے کیونکہ کم سے کم کناروں کے ساتھ ایک راستہ کا انتخاب کرنا ہے۔ بریڈتھ فرسٹ سرچ ماخذ نوڈ سے شروع ہونے والے کم سے کم تعداد میں نوڈس کو عبور کرکے اس کی اجازت دے سکتی ہے۔ اسی طرح ، پھیلے ہوئے درخت کے ل we ، ہم پھیلے ہوئے درخت کو ڈھونڈنے کے لئے دونوں میں سے کسی ایک ، بریڈ فرسٹ سرچ یا گہرائی کے پہلے ٹراورسال طریقوں کا استعمال کرسکتے ہیں۔
براڈ کاسٹننگ: نیٹ ورکنگ بات چیت کے پیکٹ کے بطور جسے ہم کہتے ہیں اس کا استعمال کرتا ہے۔ یہ پیکٹ مختلف نیٹ ورکنگ نوڈس تک پہنچنے کے لئے ٹراورسال طریقہ پر عمل کرتے ہیں۔ سب سے زیادہ عام طور پر استعمال کیے جانے والے ٹراورسال طریقوں میں سے ایک بریڈتھ فرسٹ سرچ ہے۔ اس کو الگورتھم کے طور پر استعمال کیا جارہا ہے جو نیٹ ورک کے تمام نوڈس میں براڈکاسٹڈ پیکٹوں کو بات چیت کرنے کے لئے استعمال ہوتا ہے۔
پیر پیر پیر نیٹ ورکنگ: پیئر ٹو پیر نیٹ ورک میں پڑوسیوں کے تمام نوڈس ڈھونڈنے کے لئے بریڈتھ فرسٹ سرچ کو ٹراورسال طریقہ کے طور پر استعمال کیا جاسکتا ہے۔ مثال کے طور پر ، بٹ ٹورنٹ ہم مرتبہ ہم مرتبہ کے لئے بریڈتھ فرسٹ سرچ استعمال کرتا ہے۔
تو یہ سب بریڈتھ فرسٹ سرچ الگورتھم کے کام کرنے کے بارے میں تھا۔ اب جب کہ آپ جانتے ہو کہ گراف کو کیسے عبور کرنا ہے ، مجھے یقین ہے کہ آپ کو مزید معلومات کے بارے میں دلچسپی ہے۔ آپ کو دلچسپی رکھنے کے ل Here کچھ متعلقہ بلاگ یہ ہیں:
اس کے ساتھ ، ہم اس بلاگ کے اختتام پر آتے ہیں۔ اگر آپ کو اس عنوان سے متعلق کوئی سوالات ہیں تو ، براہ کرم نیچے ایک تبصرہ کریں اور ہم آپ کے پاس واپس جائیں گے۔
اگر آپ مصنوعی ذہانت اور مشین لرننگ کے مکمل کورس کے لئے داخلہ لینا چاہتے ہیں تو ، ایڈورکا کے پاس خصوصی طور پر تشکیل پایا گیا ہے جو آپ کو نگرانی سیکھنے ، غیر معاشرتی سیکھنے ، اور قدرتی زبان پروسیسنگ جیسی تکنیک میں ماہر بنائے گا۔ اس میں مصنوعی ذہانت اور مشین لرننگ جیسے ڈیپ لرننگ ، گرافیکل ماڈل اور کمک لرننگ سیکھنے میں جدید ترین پیشرفت اور تکنیکی نقطہ نظر کی تربیت شامل ہے۔