Tôi có thể sử dụng thuật toán chọn trung vị của trung vị để tìm trung vị trong O (n). Ngoài ra, tôi biết rằng sau khi thuật toán được thực hiện, tất cả các phần tử bên trái của trung vị sẽ ít hơn là trung bình và tất cả các phần tử bên phải đều lớn hơn mức trung bình. Nhưng làm thế nào để tôi tìm thấy những người hàng xóm gần nhất với trung vị trong thời gian O (n)?Làm thế nào để tìm k lân cận gần nhất với trung bình của n số khác biệt trong thời gian O (n)?
Nếu trung vị là n, các số ở bên trái nhỏ hơn n và các số ở bên phải lớn hơn n. Tuy nhiên, mảng không được sắp xếp ở bên trái hoặc bên phải. Các con số là bất kỳ tập hợp các số riêng biệt do người dùng đưa ra.
Vấn đề là từ Giới thiệu về thuật toán bởi Cormen, vấn đề 9.3-7
Nếu trung vị ở vị trí n, bạn đang tìm kiếm các giá trị tại vị trí n + 1 và vị trí n-1 chưa? – Polaris878
Có phải số lượng bignums hoặc số nguyên điểm cố định không? – outis