Nguồn gốc của câu hỏi này đến từ một khóa học đại học mà tôi đang tham gia, bao gồm phần giới thiệu về phân tích các thuật toán. Đây không phải là bài tập về nhà, mà là một câu hỏi được hỏi trong CLRS.
Bạn có một máy chạy chậm ở MIPS và máy nhanh chạy ở y MIPS. Bạn cũng có hai thuật toán cùng loại, nhưng độ phức tạp thời gian chạy khác nhau: một thuật toán "chậm" chạy ở T ( n ) = c 1 n 2 trong khi thuật toán "nhanh" chạy ở T ( n ) = c 2 n log n .
Bạn thực hiện thuật toán chậm trên máy nhanh và thuật toán nhanh trên máy chậm. Giá trị lớn nhất của n sao cho máy nhanh chạy thuật toán chậm đánh bại máy chậm chạy thuật toán nhanh?
Giải pháp của tôi cho đến nay:
Tìm tập hợp tất cả sao cho c 2 n log n trong đónlà số tự nhiên.
Đây là công việc của tôi cho đến nay:
Giải pháp duy nhất hiện lên trong đầu tôi là plug-n-chug tất cả các giá trị của cho đến khi tôi tìm thấy n đầu tiên trong đó
không còn giữ