Algoritma Penyortiran Python: Pengurutan Gelembung dan Penggabungan
Jelajahi algoritma pengurutan python. Visualisasikan pengurutan gelembung dan pengurutan gabungan secara asli dalam konteks IDE browser.
Ikhtisar
Penyortiran adalah salah satu operasi paling penting dalam rekayasa perangkat lunak. Meskipun Python menyediakan `.sort()` secara asli menggunakan Timsort, memahami algoritma pengurutan dasar sangat penting untuk pengetahuan arsitektur.
Bubble Sort mengandalkan pertukaran perbandingan brute force O(n²). Merge Sort mengandalkan metodologi rekursif O(n log n) Divide dan Conquer.
Kode & Output Eksekusi
Menjalankan Bubble Sort standar untuk menyusun array dalam urutan menaik.
def bubble_sort(arr):
n = len(arr)
# Traverse through all array elements
for i in range(n):
swapped = False
# Last i elements are already in place
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
# Swap if the element found is greater
arr[j], arr[j+1] = arr[j+1], arr[j]
swapped = True
if not swapped:
break
return arr
sample = [64, 34, 25, 12, 22, 11, 90]
print("Original:", sample)
print("Sorted: ", bubble_sort(sample))Original: [64, 34, 25, 12, 22, 11, 90]
Sorted: [11, 12, 22, 25, 34, 64, 90]Implementasi Langkah demi Langkah
- Pembersihan dan pengorganisasian saluran data
- Pembelajaran dasar ilmu komputer
- Mengoptimalkan lapisan tampilan kueri secara internal
Pertanyaan yang Sering Diajukan
Kapan saya harus menulis fungsi penyortiran saya sendiri?
Jarang. Anda mempelajari algoritma pengurutan sebagian besar untuk memahami kompleksitas algoritma. Dalam produksi, selalu gunakan `sorted(data)` bawaan Python karena ini adalah kode C yang sangat optimal.
Topik Terkait
Cari daftar yang diurutkan dalam waktu logaritmik O(log n). Jalankan dan pahami pencarian biner dengan Python, termasuk logika langkah demi langkah, kasus edge, dan pengoptimalan.
Generator Urutan Fibonacci PythonJalankan dan pahami deret Fibonacci dengan Python. Contoh kode interaktif ini menunjukkan pendekatan berulang dan rekursif untuk menghasilkan angka Fibonacci.