Câu hỏi:

11/07/2024 505

Mã lệnh Python sau đây thể hiện hàm sắp xếp nhanh sử dụng phân đoạn Lomuto, được trích dẫn từ Hình 3 trong sách giáo khoa Tin học 11 – Khoa học máy tính.

def quickSort(a, lo, hi):

if lo < hi:

p = phandoan Lomuto (a, lo, hi) quickSort (a, lo, p 1) quickSort(a, p+1, hi)

Có thể thấy rằng trong phần cài đặt của hàm quickSort, ta lại gọi chính nó hai lần. Kĩ thuật này được gọi là đệ quy. Em hãy giải thích tại sao hàm quickSort không chạy vô hạn với một bộ tham số hợp lệ, dù nó sẽ liên tục gọi lại chính nó.

Quảng cáo

Trả lời:

verified
Giải bởi Vietjack

Em tránh được việc đệ quy vô hạn vì phần cài đặt luôn đảm bảo điều kiện dừng là lo 2 hi. Điều kiện này chắc chắn sẽ xảy ra vì kích thước của đoạn [lo, hi] sẽ luôn bị thu hẹp qua từng lớp phân đoạn.

Bình luận


Bình luận

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Lời giải

Độ phức tạp của thuật toán Quick Sort trong trường hợp xấu nhất: O(n2).

Lời giải

- Trước tiên, cần phải tính số ngày nghỉ không phép, rồi sau đó ta thực hiện sắp xếp sau.

Số ngày nghỉ chính là 30 trừ cho số ngày đi làm. Sau đó với mỗi lần xin phép, em trừ đi, như vậy sẽ có được số ngày vắng không phép.

- Vì cần in ra số hiệu của các nhân viên nên em sắp xếp trên chỉ số thứ tự, thay vì sắp xếp trên giá trị.

Một công ty có n nhân viên. Đã tới cuối tháng, người chủ nhận thấy tháng này có khá nhiều nhân viên vắng làm. Ông đã kiểm tra danh sách chấm công và biết được số ngày  (ảnh 2)

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Lời giải

Bạn cần đăng ký gói VIP ( giá chỉ từ 199K ) để làm bài, xem đáp án và lời giải chi tiết không giới hạn.

Nâng cấp VIP

Vietjack official store
Đăng ký gói thi VIP

VIP +1 - Luyện thi tất cả các đề có trên Website trong 1 tháng

  • Hơn 100K đề thi thử, đề minh hoạ, chính thức các năm
  • Với 2tr+ câu hỏi theo các mức độ Nhận biết, Thông hiểu, Vận dụng
  • Tải xuống đề thi [DOCX] với đầy đủ đáp án
  • Xem bài giảng đính kèm củng cố thêm kiến thức
  • Bao gồm tất cả các bậc từ Tiểu học đến Đại học
  • Chặn hiển thị quảng cáo tăng khả năng tập trung ôn luyện

Mua ngay

VIP +3 - Luyện thi tất cả các đề có trên Website trong 3 tháng

  • Hơn 100K đề thi thử, đề minh hoạ, chính thức các năm
  • Với 2tr+ câu hỏi theo các mức độ Nhận biết, Thông hiểu, Vận dụng
  • Tải xuống đề thi [DOCX] với đầy đủ đáp án
  • Xem bài giảng đính kèm củng cố thêm kiến thức
  • Bao gồm tất cả các bậc từ Tiểu học đến Đại học
  • Chặn hiển thị quảng cáo tăng khả năng tập trung ôn luyện

Mua ngay

VIP +6 - Luyện thi tất cả các đề có trên Website trong 6 tháng

  • Hơn 100K đề thi thử, đề minh hoạ, chính thức các năm
  • Với 2tr+ câu hỏi theo các mức độ Nhận biết, Thông hiểu, Vận dụng
  • Tải xuống đề thi [DOCX] với đầy đủ đáp án
  • Xem bài giảng đính kèm củng cố thêm kiến thức
  • Bao gồm tất cả các bậc từ Tiểu học đến Đại học
  • Chặn hiển thị quảng cáo tăng khả năng tập trung ôn luyện

Mua ngay

VIP +12 - Luyện thi tất cả các đề có trên Website trong 12 tháng

  • Hơn 100K đề thi thử, đề minh hoạ, chính thức các năm
  • Với 2tr+ câu hỏi theo các mức độ Nhận biết, Thông hiểu, Vận dụng
  • Tải xuống đề thi [DOCX] với đầy đủ đáp án
  • Xem bài giảng đính kèm củng cố thêm kiến thức
  • Bao gồm tất cả các bậc từ Tiểu học đến Đại học
  • Chặn hiển thị quảng cáo tăng khả năng tập trung ôn luyện

Mua ngay