جاوا میں ثنائی تلاش کیا ہے؟ اس کو کیسے نافذ کریں؟



جاوا میں ثنائی کی تلاش ایک سرچ الگورتھم ہے جو ایک ترتیب والے سرے میں ہدف کی قیمت کی پوزیشن تلاش کرتی ہے۔ اس مضمون میں میں آپ کو ایک مثال کی مدد سے اس پر عمل درآمد کرنے کا طریقہ بتاتا ہوں۔

تلاش اور ترتیب دینے والے الگورتھم ہیں مقبول الگورتھم کسی بھی پروگرامنگ کی زبان میں۔ وہ پروگرامنگ کے بنیادی اصولوں کو سمجھنے کی بنیاد ہیں۔ اسی طرح کا ایک مقبول سرچ الگورتھم بائنری سرچ ان ہے . اس مضمون میں ، میں آپ کو اس کے نفاذ کے بارے میں سب کچھ بتاؤں گا۔

اس مضمون میں ذیل میں عنوانات شامل ہیں:





آو شروع کریں!

ثنائی تلاش کیا ہے؟

ثنائی تلاش کریں ایک ھے تلاش الگورتھم جو ترتیب میں ایک ہدف کی قیمت کی حیثیت حاصل کرتا ہے سرنی . ثنائی تلاش ھدف کی قیمت کا مقابلہ سرے کے درمیانی عنصر سے کرتا ہے۔ یہصرف الگ الگ عناصر کی سیٹ پر کام کرتا ہے۔ کسی مجموعہ میں بائنری تلاش استعمال کرنے کے ل the ، پہلے حل کرنا ضروری ہے۔



جاوا میں ثنائی تلاش پروگرام - جاوا میں ثنائی کی تلاش - ایڈورکاجب ایک ترتیب والے سیٹ پر آپریشن انجام دینے کے لئے استعمال کیا جاتا ہے ، تلاوت کی جانے والی قدر کی بنیاد پر تکرار کی تعداد کو ہمیشہ کم کیا جاسکتا ہے۔ آپ مذکورہ بالا سنیپ شاٹ میں تلاش کرسکتے ہیں وسط عنصر . ثنائی تلاش کی مشابہت وہ معلومات استعمال کرنا ہے جو سرنی ترتیب دی جاتی ہے اور وقت کی پیچیدگی کو کم کرتی ہے O (log n) .

بائنری سرچ الگورتھم کو لاگو کرنا

آئیے اس کو بہتر طریقے سے سمجھنے کے لئے نیچے دیئے گئے سیڈو کوڈ پر ایک نظر ڈالیں۔

طریقہ کار بائنری_سرچ A & larr ترتیب دیا ہوا سرنی N & larr سائز کی صف کو تلاش کرنے کے لئے x اور larr کی قیمت کو کم سیٹ کریں = 1 سیٹ کریں ہائی = n جبکہ ایکس نہیں ملا تو زیادہ

وضاحت:



مرحلہ نمبر 1: پہلے ، درمیانی عنصر کے ساتھ X کا موازنہ کریں۔

مرحلہ 2: اگر ایکس درمیانی عنصر سے میل کھاتا ہے تو آپ کو مڈ انڈیکس واپس کرنا ہوگا۔

مرحلہ 3: دوسری صورت میں ، اگر x وسط عنصر سے زیادہ ہے ، تو X درمیانی عنصر کے بعد صرف دائیں جانب آدھے صف میں پڑ سکتا ہے۔ لہذا آپ کو نصف نصف ہونا چاہئے۔

مرحلہ 4: بصورت دیگر ، اگر (x چھوٹا ہے) تو بائیں آدھے حصے میں دوبارہ چلائیں۔

اس طرح آپ کو دیئے ہوئے صف میں عنصر تلاش کرنے کی ضرورت ہے۔

انتباہ جاوا اسکرپٹ میں کیا کرتا ہے

آئیے اب دیکھتے ہیں کہ ثنائی تلاش الگورتھم کو بار بار کیسے نافذ کیا جائے۔ پروگرام کے نیچے بھی وہی ظاہر ہوتا ہے۔

ثانوی تلاش بازیافت کریں

پبلک کلاس بائنری سرچ {// جاکر نفاذ ثنائی تلاش کا نفاذ // ایکس کا ریٹکس انڈیکس اگر یہ آرر میں موجود ہے [l..h] ، ورنہ واپس 1 -1 بائنری سرچ (انٹرا [[، انٹ ایل ، انٹ ، ایچ ، انٹ x) {if (h> = l) {انٹرم وسط = l + (h - l) / 2 // اگر عنصر وسط ہی میں موجود ہے اگر (ایک [وسط] == x) وسط واپس آئے // اگر عنصر وسط سے چھوٹا ہے ، پھر یہ صرف بائیں سبری میں موجود ہوسکتا ہے اگر (ا [وسط]> x) بائنری تلاش (ار ، ل ، وسط - 1 ، ایکس) واپس آئے // باقی عنصر صرف دائیں سابرری ریٹرن بائنری تلاش میں موجود ہوسکتا ہے (آر آر ، وسط +1 ، ح ​​، ایکس)} // جب عنصر صف کی واپسی میں موجود نہیں ہوتا ہے تو ہم یہاں پہنچ جاتے ہیں -1} عوامی جامد باطل اہم (سٹرنگ آرگس []) {بائنری تلاش اوب = نیا بائنری سرچ () انٹ اے [] = {20، 30، 40، 10، 50} int n = a.leight int x = 40 int res = ob.binarySearch (a، 0، n - 1، x) اگر (res == -1) سسٹم آؤٹ .println ('عنصر موجود نہیں') اور System.out.println ('عنصر انڈیکس میں ملا' + res)} int

مذکورہ پروگرام پر عمل درآمد کرنے پر ، یہ خاص انڈیکس میں موجود عنصر کا پتہ لگائے گا

عنصر انڈیکس 2 میں ملا

لہذا یہ ہمارے اندر ثنائی تلاش کے اختتام تک پہنچا ہے جاوا مضمون مجھے امید ہے کہ آپ کو یہ معلوماتی معلوم ہوا اور آپ نے سمجھنے میں مدد کی .

چیک کریں ایڈوریکا کے ذریعہ ، ایک قابل اعتماد آن لائن سیکھنے والی کمپنی جس کی دنیا بھر میں 250،000 سے زیادہ مطمئن سیکھنے والوں کا نیٹ ورک موجود ہے۔ اس جاوا کے انٹرویو سوالات کے علاوہ بننے کے ل We ہم آپ کے سفر کے ہر قدم پر آپ کی مدد کرنے کے لئے یہاں موجود ہیں۔ ہم ایک نصاب لے کر آئے ہیں جو طلباء اور پیشہ ور افراد کے لئے ڈیزائن کیا گیا ہے جو جاوا ڈویلپر بننا چاہتے ہیں۔ کورس آپ کو جاوا پروگرامنگ میں آغاز فراہم کرنے اور ہائبرنیٹ اینڈ اسپرنگ جیسے جاوا کے مختلف فریم ورک کے ساتھ ساتھ جاوا کے دونوں بنیادی خیالات کے ساتھ تربیت دینے کے لئے ڈیزائن کیا گیا ہے۔

اگر آپ کو ثنائی تلاش میں عمل درآمد کرتے وقت کسی قسم کی دشواری کا سامنا کرنا پڑتا ہے ، ذیل میں تبصرے کے سیکشن میں اس کا ذکر کریں اور ہم جلد سے جلد آپ کے پاس واپس آجائیں گے۔