(Từ here)Làm thế nào để sắp xếp hàng triệu dòng dữ liệu trong một tập tin với ít/ít ỏi nhớ
tôi đã tham dự một cuộc phỏng vấn vào tuần trước và câu hỏi này đã được hỏi:
Làm thế nào để bạn sắp xếp một tỷ hàng dữ liệu trong một tệp chỉ có 640KB bộ nhớ trong máy xử lý dựa trên 8080? Không có bộ nhớ ảo, không có đĩa ngoài.
Tôi đã hỏi người phỏng vấn một cách rõ ràng nếu tôi có thể sử dụng ổ đĩa cứng, vì vậy tôi có thể sắp xếp hàng loạt cây khi tôi sắp xếp chúng và sau đó kết hợp ở cuối. Anh ấy nói không. Tôi đã thử nhiều cách, các thuật toán khác nhau. Không có gì anh đồng ý.
Tôi đã từ bỏ và hỏi anh ta một cách lịch sự, "bạn sẽ làm điều đó như thế nào?" Anh thẳng thừng nói, "Tôi sẽ không nói với bạn." (Cuộc phỏng vấn kết thúc ngay sau đó. Tôi không có ý xúc phạm anh ta, với tư cách là một nhà phát triển, tôi tò mò. Hơn nữa, đó là một câu hỏi theo bản năng, giống như tôi sẽ hỏi bất cứ ai tại nơi làm việc của tôi.)
Cuộc phỏng vấn này là một ngân hàng thực sự lớn.
Vậy, làm cách nào để mọi người tiếp cận vấn đề này?
có vẻ như anh ấy không biết !! – Pharabus
Bạn lấy tệp từ đâu nếu bạn không thể sử dụng ổ đĩa? Nó chắc chắn sẽ không được giữ trong ký ức. – Robusto
Vì cuộc phỏng vấn diễn ra rất nhanh, tôi nghĩ có lẽ bạn nên chỉ cho anh ta ở đây, vì một số trí óc giỏi nhất trên thế giới cũng không thể đoán ra được. – KevinDTimm