py simple sort
Bagi kebanyakan orang, bubble sort sepertinya merupakan algoritma mengurutkan pertama yang didengar dalam kuliah sains komputer mereka [ 1 ], dengan visualisasi prosesnya disertai diagram alir terkait telah tersedia [ 2 ]. Algoritma sederhana ini bekerja buruk dalam penggunaan sebenarnya dan pemanfaatan utama algoritma ini adalah untuk alat edukasi [ 3 ]. Dalam Python telah terdapat metode dan fungsi bawaaan untuk mengurutkan larik berjenis list, yaitu sort() [ 4 ] dan sorted() [ 5 ].
buble sort code
Dengan membandingkan dua bilangan berurutan dan menukar tempatnya bila suatu kondisi terpenuhi, biasanya bilangan pertama lebih kecil dari bilangan kedua, dapat dihasilkan kode berikut
# Sort using bubble sort
print("x: bubble sort")
x = [9, 2, 5, 8, 4, 3, 6, 7, 1, 0]
print(x)
N = len(x)
for i in range(0, N-1):
for j in range(i+1, N):
if x[i] > x[j]:
x[i], x[j] = x[j], x[i]
print(x)
dengan hasilnya adalah
x: bubble sort [9, 2, 5, 8, 4, 3, 6, 7, 1, 0] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
yang dapat dicoba secara daring pada 3xmqnd8zw .
built-in method and function
Sebuah list memiliki metode bawaan sort() yang berfungsi untuk mengurutkan nilai-nilai yang disimpannya. Selain itu Python juga menyediakan fungsi bawaan sorted() yang menerima argumen sebuah list dan mengembalikan nilai fungsi list yang sudah diurutkan nilai-nilai yang disimpannya.
sort()
Kode berikut
# Sort using sort() built-in method
print("y: sort() method")
y = [9, 2, 5, 8, 4, 3, 6, 7, 1, 0]
print(y)
y.sort()
print(y)
akan menghasilkan
y: sort() method [9, 2, 5, 8, 4, 3, 6, 7, 1, 0] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
yang dapat dicoba di 3xmqnr4d2 .
sorted()
Dengan kode di 3xmqnwacn berupa
# Sort using sorted() built-in function
print("z: sorted() function")
z = [9, 2, 5, 8, 4, 3, 6, 7, 1, 0]
print(z)
z = sorted(z)
print(z)
akan diperoleh
z: sorted() function [9, 2, 5, 8, 4, 3, 6, 7, 1, 0] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
sebagai hasilnya.
exer
- Perhatikan kode berikutyang terdapat di 3xmqp7j6a . Bagaimana hasilnya?
nums1 = [5, 6, 7, 8, 9, 0, 1, 2, 3, 4] nums2 = sorted(nums1) print(nums1) print(nums2)
- Mengacu pada soal sebelumnya mengapa berbeda hasil pada list pertama dan kedua?
- Kapan digunakan sort() dan kapan digunakan sorted()?
- Apakah metode sort() dan funsi sorted() dapat mengurutkan dari besar ke kecil?
- Pada contoh kode bubble sort yang diberikan modifikasi apa yang diperlukan agar hasilnya adalah mengurutkan bilangan dari besar ke kecil? Perhatikan kode di 3xmqppuhu , bila diperlukan.
note
- Olivera Popović, “Bubble Sort in Python”, Stack Abuse, 10 Feb 2020, url https://stackabuse.com/bubble-sort-in-python/ [20211218].
- DataSoft, “Python Data Structures and Algorithms: Bubble sort”, W3Resource, 4 Jan 2021, url https://www.w3resource.com/python-exercises/data-structures-and-algorithms/python-search-and-sorting-exercise-4.php [20211218].
- Wikipedia contributors, “Bubble sort”, Wikipedia, The Free Encyclopedia, 23 November 2021, 22:16 UTC, url https://en.wikipedia.org/w/index.php?oldid=1056844603 [20211218].
- kartik, shubham_singh, AmiyaRanjanRout, “Python List sort() method”, GeeksforGeeks, 3 Aug 2021, url https://www.geeksforgeeks.org/python-list-sort-method/ [20211218].
- Parewa Labs, “Python sorted()”, Programiz, url https://www.programiz.com/python-programming/methods/built-in/sorted [20211218].