ستناقش هذه المدونة استخدام وتنفيذ 'Bubble Sort' في Java.
ما هو 'تصنيف الفقاعات' في جافا؟
ال ' فقاعة الفرز 'خوارزمية هي أبسط خوارزمية الفرز. في هذه الخوارزمية ، يتم اجتياز المصفوفة بدءًا من العنصر الأول حتى العنصر الأخير بحيث تتم مقارنة كل عنصر بالعنصر التالي. في حالة كون العنصر السابق أكبر من العنصر التالي في المصفوفة ، يتم تبديل كلا العنصرين.
تعقيد الوقت
هناك حلقتان متداخلتان داخل خوارزمية فرز الفقاعة. لذلك فإن التعقيد الزمني سيكون ' يا (ن ^ 2) '، أين ' ن 'يتوافق مع طول المصفوفة التي يجب فرزها.
تنفيذ 'Bubble Sort' في Java
في العرض التوضيحي أدناه ، سيتم تنفيذ خوارزمية فرز الفقاعة وتوضيحها خطوة بخطوة:
عام ثابتة فارغ الفرز ( int [ ] مجموعة الفقاعات int طول ) {
ل ( int أنا = 0 ؛ أنا < طول - 1 ؛ أنا ++ ) {
ل ( int ي = 0 ؛ ي < طول - أنا - 1 ؛ ي ++ ) {
لو ( مجموعة الفقاعات [ ي + 1 ] < مجموعة الفقاعات [ ي ] ) {
int مقايضة القيم = مجموعة الفقاعات [ ي ] ؛
مجموعة الفقاعات [ ي ] = مجموعة الفقاعات [ ي + 1 ] ؛
مجموعة الفقاعات [ ي + 1 ] = مقايضة القيم ؛
} }
} }
int [ ] مصفوفة = { 4 و 2 و 1 و 3 و 10 و 8 و خمسة عشر } ؛
int الصفيف الطول = مصفوفة. طول ؛
الفرز ( GivenArray، arrayLength ) ؛
نظام . خارج . مطبعة ( 'تصبح صفيف Bubble Sorted:' ) ؛
ل ( int أنا = 0 ؛ أنا < الصفيف الطول ؛ ++ أنا ) {
نظام . خارج . مطبعة ( مصفوفة [ أنا ] + '' ) ؛
}
وفقًا للكود المحدد ، اتبع التعليمات المدرجة:
- بادئ ذي بدء ، حدد الوظيفة ' algobubbleSort () 'حيث يشير المعامل السابق إلى المصفوفة التي تم تمريرها والتي تحتاج إلى الفرز وتشير المعلمة الأخيرة إلى طولها (المصفوفة).
- في تعريف الوظيفة ، كرر عبر عناصر المصفوفة المتراكمة واحدًا تلو الآخر في ' ل ' حلقة.
- في الخطوة التالية ، قم بتطبيق ' ل 'حلقة تتكرر حتى آخر عنصر مصفوفة آخر. هذا لأنه ، في كل تكرار ، سيتم وضع أكبر عنصر مصفوفة في الفهرس الأخير ؛ وبالتالي ، يتم تجنبه في هذا التكرار.
- ضمن الأخير ' ل '، تحقق من الشرط بحيث إذا كان العنصر السابق أكبر من العنصر التالي ، فسيتم تبديل القيم بطريقة يتم فيها وضع القيمة الأصغر أولاً بترتيب تصاعدي وهكذا مع القيم المتكررة الإضافية.
- بشكل أساسي ، قم بتعريف مصفوفة تشتمل على قيم الأعداد الصحيحة المذكورة بطريقة غير مرتبة.
- في الخطوة التالية ، قم بربط ' طول 'مع المصفوفة لإرجاع طول المصفوفة.
- بعد ذلك ، قم باستدعاء الوظيفة المحددة بتمرير المصفوفة المعلنة وطولها كمعلمات (وظيفتها).
- أخيرًا ، قم بالتكرار خلال المصفوفة مع الأخذ في الاعتبار طولها ، وستكون الوظيفة التي تم الوصول إليها ' فقاعة الفرز 'المصفوفة بطريقة تصاعدية.
انتاج |
في الإخراج أعلاه ، يمكن ملاحظة أنه تم فرز المصفوفة وفقًا لذلك.
خاتمة
' فقاعة الفرز يتم تنفيذ ”في Java عن طريق اجتياز مصفوفة من العنصر الأول إلى العنصر الأخير ، وتتم مقارنة كل عنصر بالعنصر التالي خطوة بخطوة بحيث يتم استرداد المصفوفة بترتيب تصاعدي. تناولت هذه المدونة بالتفصيل الخوارزمية وتنفيذ نوع الفقاعة في جافا.