Bagaimana cara menerapkan Bubble Sort dengan Python?



Di blog ini, Anda akan mempelajari kode dan penjelasan tentang pengurutan list Python menggunakan bubble sort dengan metode swapping.

Pengurutan berarti menyusun suatu data dalam urutan naik atau turun menurut suatu hubungan linier antar elemen. Artikel ini tentang Bubble Sort in akan membantu Anda memahami konsep ini secara detail.

Kami akan membahas topik di bawah ini di blog ini:





Apa itu Bubble Sort?

Jenis gelembung juga dikenal sebagai jenis tenggelam. Ini adalah algoritme pengurutan sederhana yang terus melangkah melalui daftar yang akan disortir, membandingkan setiap pasangan item yang berdekatan dan menukar item tersebut jika tidak dalam urutan yang benar. Langkah-langkah tersebut diulangi hingga tidak ada lagi swap yang diperlukan, saat daftar diurutkan.

Langkah-langkah untuk melakukan Bubble Sort

  • Bandingkan elemen pertama dan kedua dalam daftar dan tukar jika urutannya salah.
  • Bandingkan elemen kedua dan ketiga dan tukar jika urutannya salah.
  • Lanjutkan dengan cara yang sama hingga elemen terakhir dari daftar dengan cara yang serupa.
  • Terus ulangi semua langkah di atas hingga daftar diurutkan.

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



Jenis gelembung dengan Python - Edureka



Algoritme Sortir Gelembung

Sekarang mari kita lihat Algoritma di balik Bubble Sort.

Lulus Pertama:

( 16.19 , 11,15,10) -> ( 16.19 , 11,15,10) - Algoritme membandingkan dua elemen pertama dan swap 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, karena elemen-elemen ini sudah dalam urutan yang benar (19> 10), algoritma tidak menukar mereka.

Pass 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)

Itu diurutkan, tetapi algo kami tidak tahu apakah sudah selesai. Oleh karena itu, perlu seluruh pass tanpa swap untuk mengetahuinya diurutkan.

Lulus 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)

Umpan Keempat:

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

Output akhirnya adalah (10,11,15,16,19)

Mari kita sekarang mengkodekannya -

Program Python untuk mengimplementasikan Bubble Sort

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

#repeating loop len (a) (number of elements) berapa kali untuk j dalam range (len (a)): # initially swapped is false swapped = False i = 0 while ia [i + 1]: #swapping a [i ], a [i + 1] = a [i + 1], a [i] #Mengubah nilai swapped swapped = True i = i + 1 # if swapped false maka daftar diurutkan #kita dapat menghentikan pengulangan jika ditukar == False: putus cetak (a)
 KELUARAN: 


Dalam kode di atas, kami membandingkan nomor yang berdekatan dan menukarnya jika tidak dalam urutan yang benar. Ulangi proses yang sama len (a) beberapa kali. Kami telah menetapkan variabel 'bertukar' dan membuatnya 'Benar' jika ada dua elemen yang ditukar dalam sebuah iterasi. Dan jika tidak ada elemen yang saling bertukar maka daftar sudah diurutkan dan karenanya, tidak ada perubahan dalam nilai 'swapped' dan kita dapat memutus pengulangan.

Dengan ini, kita sampai pada akhir blog berjudul 'Bagaimana menerapkan Bubble Sort dengan Python'. Saya berharap konten menambah nilai pengetahuan Python Anda.

Pastikan Anda berlatih sebanyak mungkin dan mengembalikan pengalaman Anda.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar di blog 'Bagaimana menerapkan Bubble Sort in Python' dan kami akan menghubungi Anda kembali secepatnya.

Untuk mendapatkan pengetahuan mendalam tentang Python beserta berbagai aplikasinya, Anda dapat mendaftar secara langsung dengan dukungan 24/7 dan akses seumur hidup.

cara membuat paket