Tôi đã thử vấn đề này từ CLRS (Trang 39, 2.3-4)
Chúng ta có thể biểu thị sắp xếp chèn như một thủ tục đệ quy như sau. Để sắp xếp
A[1... n]
, chúng tôi sắp xếp đệ quyA[1... n-1]
và sau đó chènA[n]
vào mảng đã sắp xếpA[1... n-1]
. Viết một lần lặp lại cho thời gian chạy của phiên bản đệ quy sắp xếp này.
Sự tái phát tôi hình thành là
Lý luận của tôi
- trường hợp cơ sở của danh sách được sắp xếp để không có công việc do đó thời gian không đổi.
- Đối với tất cả các trường hợp khác, thời gian phụ thuộc vào việc sắp xếp chuỗi
A[1...n-1]
và sau đó chèn vào chuỗi đó. Do đó, nó phải là tổng của họ, nghĩa là,.
Tôi muốn biết liệu mối quan hệ tái phát là chính xác. Nếu không những sai lầm là gì và làm thế nào để xây dựng chính xác một mối quan hệ tái phát?
1
Bạn có thể quan tâm đến câu hỏi tham khảo của chúng tôi . Cụ thể, khái niệm "thời gian chạy" là mờ nhạt, sự tái diễn với
—
Raphael
-terms không phải là cách tốt nhất để đặt mọi thứ và một số loại giải quyết tái phát đã được thảo luận. Lưu ý rằng các câu hỏi "có - không" thường không mong muốn ở đây. (Tôi lưu ý rằng câu hỏi đã cũ; để lại nhận xét để tham khảo.)