Tôi cầu xin khác nhau cho những gì hầu hết các câu trả lời nói. Mặc dù tôi không mong muốn một lập trình viên ở bất kỳ cấp độ nào có thể tự mình đưa ra thuật toán của Dijkstra, tôi chắc chắn sẽ mong đợi anh ta đưa ra bất kỳ cách nào (hiệu quả hay không) để giải quyết vấn đề.
Ví dụ, bạn đã nói như một nhận xét phụ rằng bạn có thể tự mình đưa ra loại bong bóng. Tôi biết nó là thuật toán sắp xếp dễ hiểu nhất, nhưng bạn đã tìm ra cách giải quyết vấn đề và đó là điều tôi mong các lập trình viên có thể: tìm cách giải quyết vấn đề.
Tất nhiên, điều tra và tìm giải pháp được thực hiện bởi những người khác cũng có hiệu quả, nhưng điểm cực đoan đó là một anh chàng không nghĩ về bản thân mình và những chương trình của họ là một bản tóm tắt các tìm kiếm của Google.
Tôi nghĩ rằng tôi nghe có vẻ khắc nghiệt hơn tôi thực sự muốn, nhưng quan điểm của tôi là: Tôi mong muốn một lập trình viên đủ sáng tạo để đưa ra giải pháp cho một vấn đề, ngay cả khi giải pháp đó có lỗi hoặc lộn xộn.
Vì vậy, quay trở lại trường hợp của bạn, tôi không nghĩ bạn nên nghĩ ra thuật toán của Dijkstra, nhưng nếu bạn có khả năng viết một thuật toán để thử một vài khả năng và tìm ra con đường ngắn nhất mà không kết thúc trên một vòng lặp vô hạn, sau đó bạn đã được tôi chấp thuận.
(BTW sự chấp thuận của tôi được tính theo thứ tự quan trọng như một phiếu giảm giá rửa xe miễn phí.)