Bagaimana cara melaksanakan Bubble Sort di Python?



Di blog ini, anda akan mempelajari kod dan penjelasan mengenai penyortiran senarai Python menggunakan penyortiran gelembung menggunakan kaedah pertukaran.

Menyusun bermaksud mengatur data dalam susunan yang meningkat atau menurun mengikut beberapa hubungan linear antara unsur-unsur. Artikel ini mengenai Bubble Sort in akan membantu anda memahami konsep ini secara terperinci.

Kami akan membahas topik-topik di bawah ini dalam blog ini:





Apa itu Bubble Sort?

Bubble sort juga dikenali sebagai sinking sort. Ini adalah algoritma penyusun mudah yang terus menerus melangkah ke senarai yang akan disusun, membandingkan setiap pasangan item bersebelahan dan menukarnya jika tidak berada dalam urutan yang betul. Langkah-langkahnya diulang sehingga tidak diperlukan pertukaran lagi, iaitu ketika senarai disusun.

contoh kaedah panggilan jarak jauh java

Langkah-langkah untuk melakukan Bubble Sort

  • Bandingkan elemen pertama dan kedua dalam senarai dan tukar jika mereka berada dalam urutan yang salah.
  • Bandingkan elemen kedua dan ketiga dan tukarkan jika mereka berada dalam urutan yang salah.
  • Teruskan dengan cara yang sama sehingga elemen terakhir dalam senarai yang serupa.
  • Terus ulangi semua langkah di atas sehingga senarai disusun.

Langkah-langkah di atas akan lebih jelas dengan visualisasi berikut -



Jenis gelembung di Python - Edureka



Algoritma Susun Gelembung

Sekarang mari kita lihat Algoritma di sebalik Bubble Sort.

Pas Pertama:

( 16.19 , 11,15,10) -> ( 16.19 , 11,15,10) - Algoritma membandingkan dua elemen pertama dan pertukaran sejak 19> 16

(16, 19.11 , 15.10) -> (16, 11.19 , 15.10) - Tukar sejak 19> 11

(16.11, 19.15 , 10) -> (16,11, 15.19 , 10) - Tukar sejak 19> 15

(16,11,15, 19.10 ) -> (16,11,15, 10.19 ) - Sekarang, kerana unsur-unsur ini sudah berada dalam urutan yang betul (19> 10), algoritma tidak menukarnya.

Pas Kedua:

( 16.11 , 15,10,19) -> ( 11.16 , 15,10,19) - Tukar sejak 16> 11

(sebelas, 16.15 , 10.19) -> (11, 15.16 , 10,19) - Tukar sejak 16> 15

(11.15, 16.10 , 19) -> (11,15, 10.16 , 19) - Tukar sejak 16> 10

(11,15,10,16,19) -> (11,15,10,16,19)

The disusun, tetapi algo kita tidak tahu apakah ia selesai. Oleh itu, ia memerlukan keseluruhan hantaran tanpa pertukaran untuk mengetahui ia disusun.

Pas Ketiga:

(sebelas, 15.10 , 16,19) -> (11, 15.10 , 16,19)

(sebelas, 15.10 , 16,19) -> (11, 10.15 , 16,19) - Tukar sejak 15> 10

(11,10,15,16,19) -> (11,10,15,16,19)

(11,10,15,16,19) -> (11,10,15,16,19)

Pas Keempat:

( 11.10 , 15,16,19) -> ( 10.11 , 15,16,19) - Tukar sejak 11> 10

Hasil akhir adalah (10,11,15,16,19)

Mari kita kodkan ini -

Program Python untuk melaksanakan Bubble Sort

a = [16, 19, 11, 15, 10, 12, 14]

#repeating loop len (a) (bilangan elemen) bilangan kali untuk j dalam julat (len (a)): # awal bertukar adalah palsu ditukar = Salah i = 0 sementara ia [i + 1]: # menukar a [i ], a [i + 1] = a [i + 1], a [i] #Mengubah nilai pertukaran bertukar = Benar i = i + 1 #jika ditukar adalah salah maka senarai disusun #kita boleh menghentikan gelung jika ditukar == Salah: cetakan pecah (a)
 PENGELUARAN: 


Dalam kod di atas, kami membandingkan nombor bersebelahan dan menukarnya jika tidak berada dalam urutan yang betul. Ulangi proses len yang sama (a) beberapa kali. Kami telah menetapkan pemboleh ubah ‘bertukar’ dan menjadikannya ‘Benar’ jika ada dua elemen yang ditukar dalam lelaran. Dan jika tidak ada pertukaran unsur maka daftar sudah disusun dan oleh itu, tidak ada perubahan dalam nilai 'bertukar' dan kita boleh putus.

Dengan ini, kita sampai pada akhir blog yang berjudul 'Bagaimana menerapkan Bubble Sort di Python'. Saya harap kandungan nilai tambah untuk pengetahuan Python anda.

Pastikan anda berlatih sebanyak mungkin dan kembalikan pengalaman anda.

Ada soalan untuk kami? Sila sebutkan di bahagian komen dari blog “Cara menerapkan Bubble Sort in Python” ini dan kami akan menghubungi anda secepat mungkin.

Untuk mendapatkan pengetahuan mendalam tentang Python bersama dengan pelbagai aplikasinya, anda boleh mendaftar secara langsung dengan sokongan 24/7 dan akses seumur hidup.