Sửa lại cách cài đặt thuật toán Quick Sort để sắp xếp một danh sách tuple
Sách bài tập Tin học 11 Bài 9: Lập trình sắp xếp nhanh - Cánh diều
Câu Fcs39 trang 61 SBT Tin học 11: Sửa lại cách cài đặt thuật toán Quick Sort để sắp xếp một danh sách tuple (ưu tiên khoá bên trái trước, nếu khoá bên trái bằng nhau thì so sánh khoá bên phải).
Lời giải:
Giả sử em cần sắp thứ tự một danh sách a. Thay vì trực tiếp so sánh bằng toán tử qua biểu thức (a[j] < pivot), em có thể định nghĩa hàm less_than_or_equal(a, b) trả về một giá trị boolean thể hiện tiêu chuẩn so sánh mà em muốn áp dụng với tuple a và tuple b, rồi thay thế điều kiện ở hàm phân đoạn if a[j] <= pivot thành if less_than_or_equal(a[j], pivot).
Một cách cài đặt hàm so sánh:
Lời giải SBT Tin 11 Bài 9: Lập trình sắp xếp nhanh hay khác: