Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk melaksanakan pengisihan pantas menggunakan Python

Bagaimana untuk melaksanakan pengisihan pantas menggunakan Python

小老鼠
小老鼠asal
2023-12-18 15:37:531001semak imbas

Cara melaksanakan pengisihan pantas dalam Python: 1. Tentukan fungsi yang dipanggil quick_sort dan gunakan kaedah rekursif untuk melaksanakan pengisihan pantas 2. Semak panjang tatasusunan, jika panjangnya kurang daripada atau sama dengan 1, kembalikan tatasusunan secara terus , jika tidak, pilih Elemen pertama dalam tatasusunan digunakan sebagai elemen pangsi (pivot), dan kemudian tatasusunan dibahagikan kepada dua sub-tatasusunan yang lebih kecil daripada elemen pangsi dan lebih besar daripada elemen pangsi 3. Sambungkan dua sub-susun; tatasusunan dan elemen pangsi untuk membentuk tatasusunan yang diisih Itu sahaja.

Bagaimana untuk melaksanakan pengisihan pantas menggunakan Python

Sistem pengendalian tutorial ini: sistem Windows 10, Python versi 3.11.4, komputer Dell G3.

Berikut ialah cara melaksanakan isihan pantas menggunakan Python:

def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    else:
        pivot = arr[0]
        less_than_pivot = [x for x in arr[1:] if x <= pivot]
        greater_than_pivot = [x for x in arr[1:] if x > pivot]
        return quick_sort(less_than_pivot) + [pivot] + quick_sort(greater_than_pivot)
# 示例
arr = [3, 6, 8, 10, 1, 2, 1]
sorted_arr = quick_sort(arr)
print(sorted_arr)

Dalam contoh ini, kami mentakrifkan fungsi yang dipanggil quick_sort, yang menggunakan kaedah rekursif untuk melaksanakan isihan pantas. Fungsi mula-mula menyemak panjang tatasusunan, dan jika panjangnya kurang daripada atau sama dengan 1, ia mengembalikan tatasusunan secara langsung. Jika tidak, kami memilih elemen pertama dalam tatasusunan sebagai elemen pangsi, dan kemudian bahagikan tatasusunan kepada dua subarray yang lebih kecil daripada elemen pangsi dan lebih besar daripada elemen pangsi. Akhir sekali, kami menggabungkan dua subarray dan elemen pangsi untuk membentuk tatasusunan yang diisih.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pengisihan pantas menggunakan Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn