جاوا میں ببل کی ترتیب کیا ہے؟

Jawa My Bbl Ky Trtyb Kya



جاوا میں غیر ترتیب شدہ ڈیٹا کے ساتھ نمٹنے کے دوران، بڑی تعداد میں ڈیٹا کو صعودی انداز میں ترتیب دینے کی مثالیں ہوسکتی ہیں۔ مثال کے طور پر، رن ٹائم کے وقت تصادفی طور پر تیار کردہ اقدار کو ترتیب دینا۔ ایسے حالات میں ' بلبلا چھانٹنا الگورتھم لمبی صفوں کو فوری طور پر چھانٹنے میں معاون ہے اور ڈویلپر کے اختتام پر بیک وقت لاگو کرنے میں آسان ہے۔

یہ بلاگ جاوا میں 'Bubble Sort' کے استعمال اور نفاذ پر بات کرے گا۔

جاوا میں 'بلبلا ترتیب' کیا ہے؟

' بلبلا چھانٹنا الگورتھم سب سے آسان چھانٹنے والا الگورتھم ہے۔ اس الگورتھم میں، ایک صف کو پہلے عنصر سے شروع کر کے آخری تک اس طرح عبور کیا جاتا ہے کہ ہر عنصر کا موازنہ اگلے سے کیا جاتا ہے۔ پچھلے عنصر کی صف میں اگلے عنصر سے زیادہ ہونے کی صورت میں، دونوں عناصر کو تبدیل کر دیا جاتا ہے۔







وقت کی پیچیدگی

ببل ترتیب الگورتھم کے اندر دو نیسٹڈ لوپس ہیں۔ لہذا وقت کی پیچیدگی ہوگی ' O(n^2) '، کہاں ' n ” صف کی لمبائی سے مساوی ہے جسے ترتیب دینے کی ضرورت ہے۔



جاوا میں 'بلبلے کی ترتیب' کا نفاذ

نیچے دیے گئے مظاہرے میں، ببل ترتیب الگورتھم کا نفاذ کیا جائے گا اور مرحلہ وار وضاحت کی جائے گی:



عوام جامد باطل algobubbleSort ( int [ ] bubbleArray int لمبائی ) {

کے لیے ( int میں = 0 ; میں < لمبائی - 1 ; میں ++ ) {

کے لیے ( int جے = 0 ; جے < لمبائی - میں - 1 ; جے ++ ) {

اگر ( bubbleArray [ جے + 1 ] < bubbleArray [ جے ] ) {

int سویپ ویلیوز = bubbleArray [ جے ] ;

bubbleArray [ جے ] = bubbleArray [ جے + 1 ] ;

bubbleArray [ جے + 1 ] = سویپ ویلیوز ;

} }

} }

int [ ] دیا گیا صف = { 4 , 2 , 1 , 3 , 10 , 8 , پندرہ } ;

int صف کی لمبائی = دیا گیا صف. لمبائی ;

algobubbleSort ( دیا گیا سرنی، سرنی کی لمبائی ) ;

سسٹم . باہر . پرنٹ کریں ( 'بلبل کی ترتیب شدہ صف بن جاتی ہے:' ) ;

کے لیے ( int میں = 0 ; میں < صف کی لمبائی ; ++ میں ) {

سسٹم . باہر . پرنٹ کریں ( دیا گیا صف [ میں ] + ' ) ;

}

دیئے گئے کوڈ کے مطابق، فہرست میں دی گئی ہدایات پر عمل کریں:





  • سب سے پہلے، فنکشن کی وضاحت کریں ' algobubbleSort() ” جس میں سابقہ ​​پیرامیٹر پاس کردہ صف کی طرف اشارہ کرتا ہے جسے ترتیب دینے کی ضرورت ہے اور بعد کا پیرامیٹر اس کی (سرنی) لمبائی کی طرف اشارہ کرتا ہے۔
  • فنکشن کی تعریف میں، پہلے میں ایک ایک کر کے جمع شدہ سرنی عناصر کے ذریعے تکرار کریں۔ کے لیے 'لوپ.
  • اگلے مرحلے میں، ایک اندرونی لاگو کریں ' کے لیے ” لوپ جو دوسرے آخری صف کے عنصر تک دہراتی ہے۔ اس کی وجہ یہ ہے کہ، ہر تکرار پر، سب سے بڑا سرنی عنصر آخری اشاریہ پر رکھا جائے گا۔ اس لیے اس تکرار میں اس سے گریز کیا جاتا ہے۔
  • مؤخر الذکر کے اندر ' کے لیے ” لوپ، اس حالت کو چیک کریں کہ اگر سابقہ ​​عنصر اگلے عنصر سے بڑا ہے، تو قدریں اس طرح تبدیل ہو جائیں گی کہ چھوٹی قدر کو صعودی ترتیب میں پہلے رکھا جائے اور اسی طرح مزید اعادہ شدہ اقدار کے ساتھ۔
  • بنیادی طور پر، غیر ترتیب شدہ انداز میں بیان کردہ عددی اقدار پر مشتمل ایک صف کا اعلان کریں۔
  • اگلے مرحلے میں، منسلک کریں ' لمبائی صف کی لمبائی واپس کرنے کے لیے صف کے ساتھ خاصیت۔
  • اس کے بعد، اعلان کردہ سرنی اور اس کی لمبائی کو اس کے (فنکشن) پیرامیٹرز کے طور پر پاس کر کے متعین فنکشن کو طلب کریں۔
  • آخر میں، اس کی لمبائی پر غور کرتے ہوئے سرنی کے ذریعے تکرار کریں، اور رسائی شدہ فنکشن ' بلبلا چھانٹنا ایک صعودی انداز میں صف۔

آؤٹ پٹ



مندرجہ بالا آؤٹ پٹ میں، یہ دیکھا جا سکتا ہے کہ دی گئی صف کو اس کے مطابق ترتیب دیا گیا ہے.

نتیجہ

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