Có một thuật toán lựa chọn trường hợp xấu nhất được biết đến để tìm phần tử lớn thứ k trong một mảng các số nguyên. Nó sử dụng cách tiếp cận trung bình để tìm một trục đủ tốt, phân vùng mảng đầu vào tại chỗ và sau đó tiếp tục đệ quy trong tìm kiếm phần tử lớn nhất thứ k .
Điều gì sẽ xảy ra nếu chúng ta không được phép chạm vào mảng đầu vào, cần thêm bao nhiêu dung lượng để tìm phần tử lớn nhất thứ trong thời gian O ( n ) ? Chúng ta có thể tìm thấy phần tử lớn nhất thứ k trong không gian thừa O ( 1 ) và vẫn giữ thời gian chạy O ( n ) không? Ví dụ: việc tìm phần tử tối đa hoặc tối thiểu cần thời gian O ( n ) và không gian O ( 1 ) .
Theo trực giác, tôi không thể tưởng tượng rằng chúng ta có thể làm tốt hơn không gian nhưng có bằng chứng nào về điều này không?
Can điểm một người tham gia tham chiếu hoặc đưa ra một cuộc tranh cãi tại sao 'th yếu tố đòi hỏi O ( n ) không gian để được tìm thấy trong O ( n ) thời gian?